2
我有一个二维整数数组:如何使用Java来找到阵列总和流
int arr[][] = new int[rows][columns];
第n行和可以使用发现:
int rSum=Arrays.stream(arr[n]).sum();
我如何才能找到第p列总和?
int cSum=Arrays.stream(arr[][p]).sum();
上述行不起作用。
我有一个二维整数数组:如何使用Java来找到阵列总和流
int arr[][] = new int[rows][columns];
第n行和可以使用发现:
int rSum=Arrays.stream(arr[n]).sum();
我如何才能找到第p列总和?
int cSum=Arrays.stream(arr[][p]).sum();
上述行不起作用。
您可以将p
个元素的每一行上图:
int cSum = Arrays.stream(arr).mapToInt(row -> row[p]).sum();
这种工作方式如下:首先,我们构建从arr
流。该流将包含“矩阵”的行。然后对于每个这样的row
,我们mapToInt
它到一个int
:该行的第p
个元素。然后我们sum(..)
流int
一起来的总和。
int arr[][] = new int[][] {
{1,2},{3,4},{5,6}
};
int s = Arrays.stream(arr).mapToInt(a -> a[1]).sum();
System.out.println(s); // 12
谢谢!我认为它应该是Arrays.stream,虽然 – costania
@costania:是的,谢谢你发现错字:)。 –