You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何计算Java二维数组中每行的元素和?

实现二维数组每行总和的rowSums方法

没问题,我来帮你搞定这个需求!基于你现有的sum方法逻辑,我们可以很轻松地修改出计算每行单独总和的实现。

核心思路

你的原方法是把所有元素累加到一个总变量里,而我们需要为每一行单独维护一个累加值,最后把这些值收集到一个数组中返回。具体步骤如下:

  1. 先处理边界情况(比如输入数组为空或null),避免运行时错误;
  2. 创建一个结果数组,长度和输入二维数组的行数一致,用来存储每行的总和;
  3. 遍历每一行,对当前行的所有元素求和,将结果存入结果数组对应位置;
  4. 返回结果数组。

完整代码实现

public static int[] rowSums(int[][] array) {
    // 处理空输入的边界情况
    if (array == null || array.length == 0) {
        return new int[0];
    }
    
    // 结果数组长度等于二维数组的行数
    int[] rowTotals = new int[array.length];
    
    for (int i = 0; i < array.length; i++) {
        int currentRowSum = 0;
        // 遍历当前行的所有元素,计算总和
        for (int k = 0; k < array[i].length; k++) {
            currentRowSum += array[i][k];
        }
        // 将当前行总和存入结果数组对应位置
        rowTotals[i] = currentRowSum;
    }
    
    return rowTotals;
}

代码说明

  • 边界处理:加入了对array == null或array.length == 0的判断,返回空数组,避免出现NullPointerException;
  • 结果数组初始化:rowTotals的长度和输入数组的行数一一对应,保证每一行的总和都有位置存放;
  • 双层循环逻辑:外层循环控制行的遍历,内层循环计算当前行的元素总和,最后把值赋值给rowTotals[i]。

使用示例

比如你有这样的二维数组:

int[][] testArray = {{1, 2, 3}, {4, 5}, {6}};
int[] result = rowSums(testArray);

最终result数组的值会是[6, 9, 6],分别对应三行的总和。

内容的提问来源于stack exchange,提问作者Kasey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 11:37:18