1.函数式接口
1.1函数式接口概述【理解】
概念
有且仅有一个抽象方法的接口
如何检测一个接口是不是函数式接口
@FunctionalInterface
放在接口定义的上方:如果接口是函数式接口,编译通过;如果不是,编译失败
注意事项
我们自己定义函数式接口的时候,@FunctionalInterface是可选的,就算我不写这个注解,只要保证满足函数式接口定义的条件,也照样是函数式接口。但是,建议加上该注解
1.2函数式接口作为方法的参数【应用】
1.3函数式接口作为方法的返回值【应用】
1.4常用函数式接口之Supplier【应用】
Supplier接口
Supplier接口也被称为生产型接口,如果我们指定了接口的泛型是什么类型,那么接口中的get方法就会生产什么类型的数据供我们使用。
1.5常用函数式接口之Consumer【应用】
1.6常用函数式接口之Predicate【应用】
1.10常用函数式接口之Function【应用】
2.Stream流
Stream流的好处
直接阅读代码的字面意思即可完美展示无关逻辑方式的语义:获取流、过滤姓张、过滤长度为3、逐一打印
Stream流把真正的函数式编程风格引入到Java中
2.1 Stream流的常见生成方式【应用】
2.2Stream流中间操作方法【应用】
概念
中间操作的意思是,执行完此方法之后,Stream流依然可以继续执行其他操作。
2.3Stream流终结操作方法【应用】
概念
终结操作的意思是,执行完此方法之后,Stream流将不能再执行其他操作。
2.4Stream流的收集操作【应用】
概念
对数据使用Stream流的方式操作完毕后,可以把流中的数据收集到集合中。