java 9 中对 Stream API 的加强

技术的更新老是很快,java 9 已经发布了有一段时间啦,增长了不少新的特性,其中 Stream API 也作了加强,添加了一下方法:takeWhile(), dropWhile(), iterate(), and ofNullable()java

takeWhile()api

方法依据 predicate 条件从流中提取元素,一旦predicate失败,它就中止并返回流,因此下面的条件 7 不是偶数,后续的 8,10 不会输出。spa

按照 predicate 的条件,是按顺序到集合中遍历元素,因此对于 set 集合,里面的顺序不是必定的,因此每次操做不必定会输出相同的结果。code

 

Stream.dropWhile()

这个方法和 takeWhile 做用相反的,依据 predicate 条件从流中删除元素,一旦 predicate 失败,则中止。文档

和 takeWhile 同样,对于无序的集合,输出的结果不是固定的。it

stream

 

Stream.ofNullable()

若是指定元素为非null,则获取一个元素并生成单个元素流,元素为null则返回一个空流。循环

 

Stream.iterate()

Stream 已经有一个 iterate 产生流,下面的示例将生成数字1,2,3,4无限流.遍历

能够使用 limit 限制方法

接下来就是 java 9 中加强的方式,这种和咱们写for 循环的方式相似。

参考文档:https://www.callicoder.com/java-9-stream-api-enhancements/

相关文章
相关标签/搜索