1.介绍
其实lambda就是简化版的匿名内部类
//正常匿名内部类写法
Thread t = new Thread(new Runnable(){@Overridepublic void run() {System.out.println();}
});
// lambda写法
Thread t = new Thread(()->{System.out.println("giao");});
思考: 1.省略new Runnable 也就是new 类名
2.省略public void run 也就是方法声明,只留下方法体
2.省略规则:
1.重写方法的参数位置,参数类型可以省略
2.重写方法如果有一个参数,参数的小括号可以省略
3.如果重写方法的方法体中,只有一句话,方法体的大括号,以及这句话的分号都可以省略
4.如果重写方法的方法体中,只有一句话,而且这句话带return,方法体大括号,这句话的分号,以及 return关键字都可以省略
3.要求
当然,Lambda表达式的要求也是非常严格,要求
1.必须有接口做参数传递
2.此接口必须只能有一个抽象方法-> 函数式接口
3.必须要重写方法