关于Java的Lambda表达式

由于试图写一篇很长的文章却苦于写不下去,
我决定写一篇适合自己的文章。
虽然已经有种被写得十分详尽的感觉,但这将成为初学者的备忘录。

在编程中,Lambda表达式是一种匿名函数或代码块的简洁表示方法。

尽管会产生误认为λ表达式和Java是一样的观点(个人偏见),我会简单地介绍一下背景。

    • CPUマルチコア化に伴う、スレッドを有効活用する需要

 

    • Java SE 7 でのFork/Join Framework(分割統治法)を簡単に利用

 

    • 関数を独立して扱うことが出来る

 

    匿名クラスを簡単に扱える

在Java中的定位

    • 関数型インターフェースを簡単に記述できる

 

    • 関数型インターフェースとは、1つの抽象メソッドを含むインターフェースのこと

Java8では、バックグラウンドでソースコードの自動変換を行い実現

型推論により型の記述も省略すれば、非常にシンプルなコードが書ける

Stream を活用するために必要

由于只是简单的列举,所以让我们实际比较一下。

我試著寫

方法

public class ThisIsSample {
    int res;
    private void calculate(int value1, int value2) {
        res = value1 + value2;
    }
}

匿名类

ThisIsSample printRunOut = new ThisIsSample() {
  public void prt() {
    System.out.println("sample");
  }
};
printRunOut.prt();

匿名函数

ThisIsSample printRunOut = () -> {
  System.out.println("sample");
};
printRunOut.prt();

果然只有这样还是不太理解。
虽然知道它通过类型推断来还原省略,但并不能说我理解了。
看来还是必须实践才行,但现在无法编译。(?)
因此,我想之后会补充说明。

请提供一些参考信息

Java8引入了Lambda表达式,Lambda表达式是一种函数式编程的接口。下面是关于Java8 Lambda表达式的基本用法的总结,其中包括书写方式、函数式接口的概念、自定义函数接口以及接收Lambda表达式的处理方法。

追加内容
Markdown语法速查表-博客
Markdown编写文档的步骤清单-博客
博客 Markdown语法一览表及速查表-博客

因为时间有限,所以我暂时列举一下……以后再进行修正。(对于Stream我还不是很了解)

2019年7月16日追記
从过去到现在,我一直与服务器相关的工作没有接触过,一直在小型办公室里使用Excel/Access/VBA。为什么现在要学习Java呢?原因是因为接触到基于Java构建的RPA,这是我第一次接触到非Web方面的服务器端系统,让我对其产生了亲近感。
虽然这篇文章可能有点随便,但请大家善意地阅读。

广告
将在 10 秒后关闭
bannerAds