一,lambda表达式的好处
(1)不使用lambda表达式
public class tset {
public static void main(String[] args) {
method(new Swim() {
@Override
public void swimming() {
System.out.println("正在游泳~~~");
}
});//调用method方法
}
public static void method(Swim s){
s.swimming();
}
}
interface Swim{
void swimming();
}
(2)使用lambda表达式
public class tset {
public static void main(String[] args) {
method(() ->System.out.println("正在游泳~~~"));//调用method方法
}
public static void method(Swim s){
s.swimming();
}
}
interface Swim{
void swimming();
}
应用lambda表达式可以简化匿名内部类的书写,让代码简洁
二,lambda表达式的语法
(1)lambda表达式是从JDK8开始后的一种新语法
(2)lambda表达式的限定条件
匿名内部类必须是函数式接口
即 必须是接口,且接口中只能有一个重写的方法
(3)lambda表达式的常见形式
()//参数->{
//中间是你重写方法的类容
}
(4)lambda表达式 的省略写法
省略核心 (可推导,可省略)
1.参数类型可以省略不写
2.如果只有一个参数,参数类型可以省略,同时()也可以省略。
3.如果lambda表达式的方法体只有一行,大括号,分号,return可以省略不写
(注意,(3)中必须一起省略)