[java] 流及并行流
流
- Java8开始提供了流(stream)操作
- 基本用法
List<Integer> nums = Arrays.asList(1,2,3); nums.stream().forEach(x->{System.out.println(x);});
函数式风格的操作
- 得到流
Stream<T> stream = collection.stream();
- 操作流
int sumOfWeights = blocks.stream() .filter(b -> b.getColor() == RED) .mapToInt(b -> b.getWeight()) .sum();
- 流操作分成两类
中间的:中间的操作保持流打开状态,并允许后续的操作,如filter sorted limit map
末端的:末端的操作必须是对流的最终操作,如max min count forEach findAny
流的并行计算
- 只需将
.stream()
换成.parallelStream()
Written on December 11, 2022