函数式接口
1、函数式接口:有且仅有一个抽象方法的接口,函数式编程体现为lambda(好处:不关心谁来实现,只关心怎么实现)
public void aa(){
//方法体
return “aaa”;
}
方法内没参数就写()
()->"aaa"
函数式编程
2.函数式编程的常用语法
1. 方法只有一行,可以省略花括号
ser()->System.out.println(); 表达式
2. 如果方法有多行,不能省略花括号
方法里有参数时,(如果()里写参数类型会报错)
ser(a,b)->{
System.out.println(a+b);
}
3…方法有return返回值的:并且只有一行的可以省略return
若方法不止一行,不能省略return
总体上函数式编程的好处:提升代码性能(延迟执行), 很好的支持链式编程(返回值是对象本身)
链式编程(如同生产线,称为流):aa().bb().cc().dd()
lambda性能优化:
level=1,代码执行----level=2时,代码不执行
lambda作为参数和返回值:
Arrays.sort(T[] a)是对数组元素按字典序进行升序排列