Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
具有java流的整数列表列表的和索引_Java_Java Stream - Fatal编程技术网

具有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;