Java8 Stream的元素执行顺序问题

管道按什么顺序处理流中的元素,取决于流的串并行、流的数据源、以及中间操作。

流的元素的执行顺序,取决于流的串并行、流的数据源、以及中间操作:

1、数据源:如果数据源本身是无序的,那么讨论元素的执行顺序就没有意义;

2、对于串行的流,其数据源是有序的,如果中间操作中没有排序之类的影响顺序的操作,那么在最终操作中处理元素的顺序,和数据源中元素的顺序就是一致的;如果中间操作中有排序之类的操作,那么在最终操作中处理元素的顺序,和依次执行各个中间操作之后的元素顺序,是一致的。

3、对于并行的流,其数据源是有序的,但是其最终操作中处理元素的顺序依然是随机的;但是并行流可以通过foreachOrdered保证执行顺序和数据源中元素的顺序一致。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值