对于对象的并行stream和串行stream为什么代码都一样啊?

来源:5-2 Lambda和Stream性能问题

慕仙2912319

2020-03-12 16:53

public static void testProductStream(List<Product> list) {
    long start = System.currentTimeMillis();

    Optional optional = list.stream().max((p1, p2)-> p1.hot - p2.hot);
    System.out.println(optional.get());

    long end = System.currentTimeMillis();
    System.out.println("testProductStream:" + (end - start) + "ms");
}

public static void testProductParallelStream(List<Product> list) {
    long start = System.currentTimeMillis();

    Optional optional = list.stream().max((p1, p2)-> p1.hot - p2.hot);
    System.out.println(optional.get());

    long end = System.currentTimeMillis();
    System.out.println("testProductParallelStream:" + (end - start) + "ms");
}


写回答 关注

1回答

  • qq_慕仰1189547
    2020-03-17 15:45:17

    估计是直接粘下来 没注意 你手动改一下就可以了 

    Optional optional = list.parallelStream().max((p1, p2)-> p1.hot - p2.hot);


一课掌握Lambda表达式语法及应用

深入浅出,快速掌握Lambda表达式“如何用”“怎么用”

6618 学习 · 58 问题

查看课程

相似问题