• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

Java8 中Stream forEach 与 foreEachOrdered 的区别

Java8 feature 来源:英杰王 1次浏览
/** * Java8 中stream流的 forEach 与 foreEachOrdered 的区别 */
public class Main { 

    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("x");
        list.add("y");
        list.add("z");

        list.parallelStream().forEach(x -> System.out.println(x));
        list.parallelStream().forEachOrdered(x -> System.out.println(x));

        //主要的区别在并行流的处理上
        //输出的顺序不一定(效率更高)
        Stream.of("AAA", "BBB", "CCC").parallel().forEach(s -> System.out.println("Output:" + s));
        //输出的顺序与元素的顺序严格一致
        Stream.of("AAA", "BBB", "CCC").parallel().forEachOrdered(s -> System.out.println("Output:" + s));
    }
}

版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)