Java8新特性之 Lambda表达式
Lambda的标准格式
(参数类型 参数名称) -> {代码体; }
格式说明:
- (参数类型 参数名称):参数列表
- {代码体;}:方法体
- ->:箭头,分隔参数列表和方法体
Lambda的语法非常简洁,但是Lambda表达式不是随便使用的,Lambda表达式的前提条件:
- 方法的参数或变量的类型是接口
- 这个接口中只能有一个抽象方法
//常规写法
new Thread(new Runnable() {
@Override
public void run() {
System.out.println("线程启动中");
}
}).start();
//lambda表达式写法,Runnable接口里面只有run抽象方法,不信去看源码
new Thread(() -> System.out.println("线程启动中")).start();
在Lambda标准格式的基础上,使用省略写法的规则为:
- 小括号内参数的类型可以省略
- 如果小括号内有且仅有一个参数,则小括号可以省略
- .如果大括号内有且仅有一个语句,可以同时省略大括号、return关键字及语句分号