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:是的,謝謝你發現錯字:)。 –