爪哇 9:Stream API的改进
在Java 9中,以下方法已添加到 流 流包的接口。这些方法是 默认 和静态。
采取()方法
此方法包含在Stream接口中,用于将元素收集到流中。它需要所有元素,直到指定为谓词的条件为止。
For example, we want to 收藏 a few elements from a 流 的 elements; 对于 this purpose, we can use 采取()
method.
以下是该方法的语法。
1 2 3 |
默认 流<T> 采取(谓词<? 超 T> 谓词) |
例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
进口 爪哇.实用程序.清单; 进口 爪哇.实用程序.流.收藏家; 进口 爪哇.实用程序.流.流; 上市 类 主要{ 上市 静态的 虚空 主要(串[] args){ 清单<整数> 清单 = 流.的 (20,30,40,62,85,21) .采取(i -> (i<85)).收藏(收藏家.到清单()); 系统.出.打印(清单); //收集到列表中 //遍历元素 流<整数> 流 = 流.的 (20,30,40,62,85,21); 流.采取(数 -> 数 < 85).每次(数 -> 系统.出.打印(数)); } } |
输出量
20
30
40
62
dropWhile()方法
This method is just opposite 的 采取()
. It drops the result when the specified condition occurs and takes rest 的 elements.
如果订购了stream,则在删除元素后将返回包含剩余元素的流。如果流是无序的,则在删除元素的子集之后,它将返回包含其余元素的流。以下是该方法的语法。
1 2 3 |
默认 流<T> dropWhile(谓词<? 超 T> 谓词) |
例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
包 myjava项目; 进口 爪哇.实用程序.清单; 进口 爪哇.实用程序.流.收藏家; 进口 爪哇.实用程序.流.流; 上市 类 主要{ 上市 静态的 虚空 主要(串[] args){ 清单<整数> 清单 = 流.的 (20,30,40,62,85,21) .dropWhile(i -> (i<85)).收藏(收藏家.到清单()); 系统.出.打印(清单); //收集到列表中 //遍历元素 流<整数> 流 = 流.的 (20,30,40,62,85,21); 流.dropWhile(数 -> 数 < 85).每次(数 -> 系统.出.打印(数)); } } |
输出量
85
21
空值()方法
此方法用于null检查,并返回顺序 流 的 a single element or an empty 流
. 该方法的语法如下。
1 2 3 |
静态的 <T> 流<T> 空值(T t) |
例
1 2 3 4 5 6 7 8 9 10 11 12 13 |
进口 爪哇.实用程序.流.流; 上市 类 主要{ 上市 静态的 虚空 主要(串[] args){ 流<整数> 流 = 流.空值(12); 流.每次(系统.出::打印); 流 = 流.空值(空值); 流.每次(系统.出::打印); //空流 } } |
输出量
重复()方法
此方法已添加到Java 9中,该方法有助于迭代流序列并采用三个参数。第一个参数称为种子,用于初始化流,第二个参数称为 谓词 并且用于指定条件,而第三个参数用于生成下一个元素。
该方法的语法如下。
1 2 3 |
静态的 <T> 流<T> 重复(T 种子, 谓词<? 超 T> hasNext, 一元运算符<T> 下一页) |
例
1 2 3 4 5 6 7 8 9 10 |
进口 爪哇.实用程序.流.流; 上市 类 主要{ 上市 静态的 虚空 主要(串[] args){ 流<整数> 流 = 流.重复(1, a->a<5, a->a+1); 流.每次(系统.出::打印); } } |
输出量
2
3
4
这类似于写一个 对于循环 如下:
1 2 3 4 5 6 |
对于(整型 i=1;i<5;i++) { 系统.出.打印(i) } |
那’s all about 爪哇 9Stream API improvements.