编程语言
首页 > 编程语言> > java-如何逐个元素添加两个IntStreams?

java-如何逐个元素添加两个IntStreams?

作者:互联网

例;

IntStream a = create(3, 1);  // => [0,0,1]
IntStream b = create(5, 2);  // => [0,0,0,0,2]

第一个流提供[0,0,1,0,0,1 …]的无限流,第二个流提供[0,0,0,0,2,0,0,0,0,0, 2,…].

结果流为ri = ai bi,这意味着我只想从每个流中获取相同位置的元素之和.

在Java中这可能吗?

解决方法:

您可以使用Guava的Streams.zip()帮助器:

IntStream sum(IntStream a, IntStream b) {
    return Streams.zip(a.boxed(), b.boxed(), Integer::sum)
            .map(Integer::intValue);
}

标签:java-stream,java
来源: https://codeday.me/bug/20191111/2019220.html