一、JDK1.8新特性之Lambda
1.Lambda表达式是什么
Lambda表达式:是一种特殊的额匿名内部类的表示形式,比较简洁。允许把函数作为一个方法的参数,将代码像数据一样传递。
2.Lambda与传统相对比
①传统的匿名内部类启动线程
new Thread(new Runnable(){
public void run(){
System.out.println("启动线程......");
}
}).start();
②Lambda表达式启动线程
new Thread(()->System.out.println("启动线程......")).start();
3.基本语法
函数式接口 变量名=(参数1,参数2...)->{
方法体
};
使用细节
- 形参列表的数据类型不需要手动指明
- 如果形参列表为空,无需写任何参数,只需保留()
- 如果形参列表只有一个,()可以省略,只需要参数的名称即可
- 如果执行语句只有一句,且无返回值,{}可以省略,若有返回值,则若想省去{},则必须同时省略return,且执行语句也只保证只有一句。
- Lambda不会生成一个单独的内部类文件