java8(stream)从数组或集合中到符合条件的就返回该对象
测试代码
public static void main(String[] args){
List<Integer> list =new ArrayList<>();
for(int i=0;i<10000;i++){
list.add(i);
}
Integer integer = list.stream()
.filter(integer1 ->{
System.out.println(integer1);
return integer1 >5;
}).findAny().get();
System.out.println();
System.out.println(integer);
}
1. 单纯使⽤stream流时,findany和findFirst效果都是⼀样的,返回6,因为都是从0开始递增的判断,所以结果都是6.
2. 使⽤parallelStream流时,findAny和findFirst效果不⼀样了,因为findFirst时到⼤于5的第⼀个,所以仍然是返回6,但是
findAny返回的值是不固定的,只要⼤于6的成⽴就马上返回.
总结
不并⾏使⽤流时,两者效果⼀致。当并⾏使⽤时,如果只是想到了就成⽴就使⽤findAny,否则采⽤findFirst.
>filter过滤对象数组

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。