当我这样做时:
IntStream i = IntStream.of(5,6,7,1,2,3,4);
//IntStream o = i.sequential();
i.forEach(System.out::println);
无论是否调用顺序,都得到相同的响应。然后,sequential()方法的用例是什么。
如InStream.of
的javadox中所述,该方法返回顺序流。因此sequential
方法不会有任何效果。
在官方文档中https://docs.oracle.com/javase/8/docs/api/java/util/stream/package-summary.html中了解有关顺序和并行流的更多信息。
例如,当您有并行流时:
IntStream i = IntStream.of(5, 6, 7, 1, 2, 3, 4);
i.parallel();
i = i.sequential();
i.forEach(System.out::println);
总是返回5、6、7、1、1、2、3、4但是,当删除i.sequential()时,由于它并行运行,因此可以获得其他结果。