package jdk8steam;
import java.util.Objects;
import java.util.stream.Stream;
/**
* Created by 80374563 on 2018/11/6.
*/
public class SteamParallel {
//顺序求和
public static long sum(long n){
Objects.requireNonNull(n);
return Stream.iterate(1l,i -> i + 1)
.limit(n)
.reduce(0l,Long::sum);
}
//并行求和
public static long parallelSum(long n){
Objects.requireNonNull(n);
return Stream.iterate(1l, i -> i + 1)
.limit(n)
//将流转为并行流
.parallel()
.reduce(0l, Long::sum);
}
public static void main(String[] args){
long st = System.currentTimeMillis();
System.out.println( sum(0));
System.out.println("sum done : " + (System.currentTimeMillis() - st) + " msecs");
long st2 = System.currentTimeMillis();
System.out.println(parallelSum(1080l));
System.out.println("parallelSum done : " + (System.currentTimeMillis() - st2) + " msecs");
}
}
网友评论