Optional<T> findAny()其作用就是从Stream中取任意一个元素,正常情况下一般会取第一个元素,在并行流的情况下会随机取一个元素。
下面看一个例子:
void stream_findAny() {
List<String> list = Arrays.asList("a","b","c","d","e","f","g");
Optional<String> opt = list.stream().findAny();
System.out.println(opt.get());
Optional<String> opt1 = list.parallelStream().findAny();
System.out.println(opt1.get());
}执行结果:
a
e
第一个有序流打印结果为a,是流中第一个元素;第二个并行流打印结果为e,为流中任意一个元素。
版权声明:本文为zhuweifeng原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。