Lambda表达式的形式
2020-02-25 本文已影响0人
_灯火阑珊处
-
形式一:没有参数
没有参数时,左边小括号不能省
() -> System.out.println("Hello World");
-
形式二:只有一个参数
只有一个参数时,左边小括号可以省略
name -> System.out.println("Hello World" + name + " java ");
-
形式三:没有参数,逻辑复杂
没有参数,左边小括号不能省;逻辑复杂,所以需要用大括号将语句括起来
() -> {
System.out.println("Hello");
System.out.println(" World ");
}
-
形式四:包含两个参数的方法
x、y为参数,返回x+y的值,返回值可以不用定义,编译器会自动判断返回值是哪个、类型是什么
BinaryOperator<Long> functionAdd = (x,y) -> x + y;
Long result = functionAdd.apply(1L,2L);
-
形式五:对参数显示声明
此时参数x、y已经被强制声明为Long类型
BinaryOperator<Long> functionAdd = (Long x , Long y) -> x + y;
Long result = functionAdd.apply(1L,2L);