JAVA 函数式编程

1、函数式编程/lambda

接口 输入参数 返回类型 说明
Predicate<T> T boolean 断言
Consumer<T> T / 消费一个数据
Function<R,R> T R 输入T输出R的函数
Supplier<T> / T 提供一个数据
UnaryOperator<T> T T 一元函数(输入输出类型相同)
BiFunction<T,U,R> (R,U) R 2个输入的函数
BinaryOperator<T> (T,T) T 二元函数(输入输出类型相同)

2、Stream流编程 - 创建

  相关方法
集合 Collection.stream/parallelStream
数组 Arrays.stream
数字Stream

InStream/LongStream.  range/rangeClosed

Random.ints/longs/doubles

自己创建 Stream.generate/iterate

3、Stream流编程 - 中间操作

  相关方法
无状态操作

map/ mapToXxx

flatMap/ flatMapToXxx

filter

peek

unordered

有状态操作

distinct

扫描二维码关注公众号,回复: 1012025 查看本文章

sorted

limit / skip

4、Stream流编程 - 终止操作

  相关方法
非短路操作

forEach / forEachOrdered

collect / toArray

reduce

min / max / count

短路操作

findFirst / findAny

allMatch / anyMatch / noneMatch

猜你喜欢

转载自my.oschina.net/u/3777515/blog/1818256