lambda(可理解为匿名函数)
1. ->
箭头操作符将 Lambda 表达式拆分成两部分:
左侧:Lambda 表达式的参数列表
右侧:Lambda 表达式中所需执行的功能, 即 Lambda 体,多语句可用{}
2. ::
要求:实现抽象方法的参数列表和返回值类型,必须与方法引用的方法的参数列表和返回值类型保持一致!
方法引用:使用操作符 “::” 将类(或对象) 与 方法名分隔开来。
如下三种主要使用情况:
对象::实例方法名
类::静态方法名
类::实例方法名
Stream API
基本操作:
一、创建Stream
从一个数据源,集合、数组、IO通道中获取流
1. stream() −为集合创建串行流。
2. parallelStream() − 为集合创建并行流
二、中间操作
一个操作的中间链,对数据源的数据进行操作
1.forEach,接收一个函数,System.out::println
2. map,接收一个函数,该函数会被应用到每个元素,并得到一个新元素的流,ps:类似的还有mapToDouble、mapToInt、mapToLong
3. sorted:排序,可以传一个比较器
三、终止操作
1. 查找、匹配:allMatch(是否匹配所有元素)、anyMatch(是否至少一个匹配)等
参看: