语法格式一:无参、无返回值,lambda体只需一条语句
Runnable r1 =() -> System.out.print("hello");
以往代码如下:
Runnable runnable = new Runnable() {
@Override
public void run() {
System.out.print("hello");
}
};
语法格式二: Lambda 需要一个参数
Consumer<String> stringConsumer =(a) -> System.out.print(a);
以往代码如下:
Consumer<String> stringConsumer1 = new Consumer<String>() {
@Override
public void accept(String ss) {
System.out.print(ss);
}
};
语法格式三:Lambda 只需要一个参数时,参数的小括号可以省略
Consumer<String> stringConsumer =a -> System.out.print(a);
语法格式四:Lambda 需要两个参数,并且有返回值
BinaryOperator<Long> operators = (a,b) ->{ System.out.println("实现函数接口方法"); return a+b; };
以往代码如下:
BinaryOperator<Long> operator =new BinaryOperator<Long>() {
@Override
public Long apply(Long a, Long b) {
System.out.println("实现函数接口方法");
return a+b;
}
};
语法格式五:当 Lambda 体只有一条语句时,return 与大括号可以省略
BinaryOperator<Long> operators = (a,b) -> a+b;