具有java流的整数列表列表的和索引
给定一个列表,有没有一种方法可以使用流将它们减少到一个列表中,并将所有索引添加到一起具有java流的整数列表列表的和索引,java,java-stream,Java,Java Stream,给定一个列表,有没有一种方法可以使用流将它们减少到一个列表中,并将所有索引添加到一起 [[1,2,3], [4,5,6]] --> [5,7,9] 所以我找到了这个IntStream,它可以进行求和 List<Integer> values = IntStream.range(0, lists.get(0).size()) .mapToObj(i -> lists.stream() .ma
[[1,2,3],
[4,5,6]]
-->
[5,7,9]
所以我找到了这个IntStream,它可以进行求和
List<Integer> values = IntStream.range(0, lists.get(0).size())
.mapToObj(i -> lists.stream()
.mapToInt(x -> x.get(i))
.sum())
.collect(Collectors.toList());
欢迎来到堆栈溢出。请学习如何使用堆栈溢出,并阅读或如何提高问题的质量。然后编辑您的问题,将您的完整源代码包含在问题中,其他人可以对其进行编译和测试。要使用正确的功能术语指导您,您需要的是Fold和Zip的组合。Zip通过对每个列表相同位置的每对元素应用一个操作(在本例中为总和)来组合两个序列。Fold将使用累积函数将元素列表缩减为单个元素,在这种情况下,该函数将是Zip。Java流通过reduce方法支持折叠。虽然使用IntStream或外部库可以实现类似的效果,但本机不支持Zip。更多详细信息.int sum=list.stream.flatMapCollection::stream.mapToIntInteger::intValue.sum;