所以我有
Stream<Integer> stream1 = Stream.of(1, 2, 3, 4, 5);
Stream<Integer> stream2 = Stream.of(6, 7, 8, 9, 10);
我想做stream3
这是 stream1
的元素之和和stream2
,换句话说,7, 9, 11, 13, 15
.
我将如何通过流操作来做到这一点?
最佳答案
您正在寻找zip
操作。
以下是如何使用 Google Guava 完成任务的Streams#zip
:
Stream<Integer> stream1 = Stream.of(1, 2, 3, 4, 5);
Stream<Integer> stream2 = Stream.of(6, 7, 8, 9, 10);
Streams.zip(stream1, stream2, Integer::sum)
.forEach(System.out::println);
输出:
7
9
11
13
15
另请参阅:
关于Java:如何添加两个整数流并生成一个新流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54723473/