【发布时间】:2023-01-26 02:17:37
【问题描述】:
在给定的整数列表中,我想跳过nth 索引处的一个元素。
输入:
{ 1, 2, 3, 4, 5 }
跳过第三个元素后的预期输出:
{ 1, 2, 4, 5 }
我可以看到即使在并行运行时,stream 始终返回最后 3 个元素,尽管它们的顺序不同。那么,流可以知道每个的索引还是随机巧合?
Stream.of(1,2,3,4,5)
.parallel()
.skip(2)
.forEach(System.out::println);
所以我的问题是,是否可以使用 Java Streams 只跳过列表中的一个元素?
【问题讨论】:
-
Stream.of(...).filter(value -> value != 3)...? -
@Turing85 应该从索引中过滤,而不是从值中过滤
-
流没有“索引”。
-
更重要的是:不能保证相遇顺序,尤其是在并行流中。
标签: java java-stream