Java 求交错数组的和

Java 求交错数组的和,java,jagged-arrays,Java,Jagged Arrays,*家庭作业 我试图在数组中添加值。使用我在下面编写的求和方法,该程序只适用于非锯齿阵列。如果我测试一个锯齿状数组,我会得到一个IndexOutOfBoundsException。如果数组是锯齿状的,我应该采取什么样的下一步来尝试使这个方法工作 int sum() { int sum = 0; for (int i = 0; i < array.length; i++) { for (int j = 0; j < array[i].length; j++

*家庭作业

我试图在数组中添加值。使用我在下面编写的求和方法,该程序只适用于非锯齿阵列。如果我测试一个锯齿状数组,我会得到一个IndexOutOfBoundsException。如果数组是锯齿状的,我应该采取什么样的下一步来尝试使这个方法工作

int sum() {
    int sum = 0;
    for (int i = 0; i < array.length; i++) {
        for (int j = 0; j < array[i].length; j++) {
            sum += array[j][i];
        } 
    }
return sum;
}
int-sum(){
整数和=0;
for(int i=0;i
您的方法很接近,但它有一个小错误-这是

sum += array[j][i];
应该是

sum += array[i][j];

请注意,您的内部循环正在迭代
数组[i]

您的方法很接近,但它有一个小错误-这是

sum += array[j][i];
应该是

sum += array[i][j];
请注意,您的内部循环正在迭代数组[i]

反转索引:

sum += array[i][j];
反转指数:

sum += array[i][j];

您正在混合索引。首先循环行(
i
),然后循环列(
j
),但是当访问数组元素时,对行使用
j
,对列使用
i

应该是:

sum += array[i][j];

您正在混合索引。首先循环行(
i
),然后循环列(
j
),但是当访问数组元素时,对行使用
j
,对列使用
i

应该是:

sum += array[i][j];
改变

sum+=array[j][i]

sum+=array[i][j]

更改

sum+=array[j][i]


sum+=array[i][j]

您测试
array[i].length
,但您访问
array[j]
您测试
array[i].length
,但您访问
array[j]