java - 查找具有不同长度的行的二维数组中的列之和

标签 java arrays

所以我的代码在返回具有不同长度的行的二维数组中的列的总和时遇到了一些麻烦。例如,2X2 数组可以完美地计算列的总和。但是,如果我有一个 2X3 数组,则会出现越界错误。我希望它适用于用户为行和列给出的任何数字,而不仅仅是我作为示例所说的固定数字。有人可以帮我解决这个问题吗?非常感谢!

这是我的代码:

public static void columnSum(int[][]anArray) {
    int totalcol = 0;
    for(int col =0; col < anArray.length; col++){
        totalcol = 0;
        for(int row = 0; row < anArray[col].length; row++) {
            totalcol += anArray[row][col];
        }
    System.out.println("Sum of column " + col + " = " + totalcol);
    }  
}

最佳答案

你的指数被翻转了。您的 for 循环是为列优先顺序编写的,但您的累加器是为行优先顺序编写的。您需要反转其中之一。

关于java - 查找具有不同长度的行的二维数组中的列之和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29875057/

相关文章:

java - 是否可以创建类似于字符串的对象池?

ios - 循环遍历一个 json 文件并填充一个数组 Swift

python - 从两个数组创建元素映射

javascript - Angular 只在没有重复元素的数组上重复

java - 使用 CertPathValidator 进行签名验证,包括 CRL 撤销

java - "prototype"bean如何让Spring只在getBean()获取到时才初始化?

java - batik 将 SVG 转换为 JPEG

java - JAX-RS 将实体作为 JAXB 对象和字符串获取

php - 如何在php中创建数组的静态索引

c - 越界访问数组有多危险?