Stream API

1. Stream API 简介

Stream API是 JDK8 的新特性,这种风格将要处理的元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选, 排序,聚合等。元素流在管道中经过中间操作的处理,最后由最终操作得到前面处理的结果。Stream API可以极大提高Java程序员的生产力,让程序员写出高效率、干净、简洁的代码。

2. Stream中间操作

filter():接收Lambda,从流中排除某些操作;

limit():截断流,限制元素的个数

limit()

skip(n):跳过元素,返回一个扔掉了前n个元素的流,若流中元素不足n个,返回一个空流。

skip()

distinct():筛选,通过流所生成元素的hashCode()和equals()去除重复元素。

distinct()

map():接收Lambda,将元素转换成其他形式或提取信息。

map()

flatMap():接收一个函数作为参数,将流中的每个值都换成另一个流,然后把所有流连接成一个流。

3. Stream终止操作

allMatch():检查是否匹配所有元素。

allMatch()

anyMatch():检查是否至少匹配一个元素。

anyMatch()

noneMatch():检查是否没有匹配所有元素。

noneMatch()

findFirst():返回第一个元素。

findFirst()

findAny():返回当前流中的任意元素。

count():返回流中元素的总个数

max():返回流中最大值

max()

min():返回流中最小值

reduce():将流中元素反复结合起来

reduce()

collect():将流转换为其他形式,接收一个Collector接口实现 

collect()

collect():不光可以将流转换成其他集合等形式,还可以进行归约操作

collect()

你可能感兴趣的:(Stream API)