关于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方面的服务器端系统,让我对其产生了亲近感。
虽然这篇文章可能有点随便,但请大家善意地阅读。