Stream API常用的操作

中间操作

操作 返回类型 使用的类型/函数式接口 函数描述符 目的
filter Stream Predicate T -> boolean 过滤
map (mapToInt 、mapToDouble 、mapToLong) Stream Function T -> R 返回某个值构成的流
limit Stream 截断流
skip (有状态,有界) Stream 跳过元素
sorted Stream Comparator (T, T) -> int 排序(正序)
distinct (有状态,无界) Stream 筛选各异的元素
flatMap Stream Function> T -> Stream 将多个流扁平化为单个流
sorted (有状态,无界) Stream Comparator (T, T) -> int 排序
boxed Stream 包装成对象流

终端操作

操作 返回类型 使用的类型/函数式接口 函数描述符 目的
forEach void Consumer T -> void 消费流中每个元素并对其应用Lambda。返回void
count long 返回流中元素个数。返回long
collect R Collector 把流归约成一个集合,比如List、Map甚至是Integer
anyMatch boolean Predicate T -> boolean 检查谓词是否至少匹配一个元素
noneMatch boolean Predicate T -> boolean 检查谓词是否不匹配所有元素
allMatch boolean Predicate T -> boolean 检查谓词是否匹配所有元素
findAny Optional 返回当前流中的任意一个元素
findFirst Optional 返回当前流中的第一个元素
reduce (有状态,有界) Optional BinaryOperator (T, T) -> T 用来进行复杂的查询

你可能感兴趣的:(java)