package com.mayikt.stream; import java.time.Duration; import java.time.Instant; import java.util.OptionalLong; import java.util.function.LongBinaryOperator; import java.util.stream.LongStream; /** * @ClassName Test17 * @Author 蚂蚁课堂余胜军 QQ644064779 www.mayikt.com * @Version V1.0 **/ public class Test17 { public static void main(String[] args) { Instant start = Instant.now(); LongStream longStream = LongStream.rangeClosed(0, 50000000000L); // 使用并行流 计算 五百亿求和耗费的时间为: 7324 7850 7 OptionalLong result = longStream.parallel().reduce((left, right) -> left + right); //使用多线程 处理 大的任务拆分成n多小的任务 在计算 在将结果合并 fork join框架 System.out.println(result.getAsLong()); Instant end = Instant.now(); System.out.println("五百亿求和耗费的时间为: " + Duration.between(start, end).toMillis()); } }