如何对 int[] 数组中的所有整数求和并返回总和

本文介绍如何编写一个高效、健壮的 java 方法,对传入的 int[] 数组进行遍历求和,正确处理空数组、负数及边界情况,并返回整型总和。

在 Java 中,对整型数组求和是一个基础但高频的操作。核心逻辑是遍历数组每个元素,并将它们累加到一个初始值为 0 的变量中。以下是一个简洁、可读性强且符合生产规范的实现:

public static int calculateSum(int[] values) {
    if (values == null) {
 

throw new IllegalArgumentException("Array cannot be null"); } int result = 0; for (int i = 0; i < values.length; i++) { result += values[i]; } return result; }

该方法严格满足题目要求:

  • calculateSum(new int[]{1, 2, 3}) → 返回 6
  • calculateSum(new int[]{-7, 7, 3}) → 返回 3
  • calculateSum(new int[]{}) → 返回 0(空数组长度为 0,循环不执行,result 保持为 0)

注意事项:

  • 原题示例代码中硬编码了 {10, 20, 30, 40} 并返回 Integer.MIN_VALUE,这与参数 values 完全无关,属于逻辑错误,必须移除;
  • 建议增加 null 检查(如上所示),避免 NullPointerException —— 这在实际工程中是良好实践;
  • 若需更高可读性或函数式风格,也可使用 Arrays.stream(values).sum()(Java 8+),但需注意其对空数组同样返回 0,对 null 则抛出 NullPointerException,仍需前置校验。

总结:数组求和的本质是线性遍历与累加,关键在于正确初始化、安全访问、边界兼容。掌握此模式,可快速迁移至其他聚合操作(如求最大值、统计正数个数等)。