2026-03-24 17:13:33
在Java中,数组求和可以通过多种方法实现,以下是详细的解答:
1. 使用 Arrays.stream() 和 sum() 方法(推荐)适用场景:适用于基本类型数组(如 int[]、double[]),代码简洁且高效。示例代码:
import java.util.Arrays;public class ArraySum { public static void main(String[] args) { int[] numbers = {1, 2, 3, 4, 5}; int sum = Arrays.stream(numbers).sum(); System.out.println("数组的和为:" + sum); // 输出:15 }}注意:
适用场景:通用方法,适用于所有数组类型(包括对象数组)。示例代码:
public class ArraySum { public static void main(String[] args) { int[] numbers = {1, 2, 3, 4, 5}; int sum = 0; for (int num : numbers) { sum += num; } System.out.println("数组的和为:" + sum); // 输出:15 }}优点:
适用场景:需要函数式编程或复杂操作(如并行流)时。示例代码:
import java.util.stream.IntStream;public class ArraySum { public static void main(String[] args) { int[] numbers = {1, 2, 3, 4, 5}; int sum = IntStream.of(numbers).sum(); // 或使用 reduce // 等价写法:int sum = IntStream.of(numbers).reduce(0, (a, b) -> a + b); System.out.println("数组的和为:" + sum); // 输出:15 }}扩展功能:
若数组为对象类型(如 Integer[]),需先转换为流或使用循环:
import java.util.Arrays;public class ArraySum { public static void main(String[] args) { Integer[] numbers = {1, 2, 3, 4, 5}; int sum = Arrays.stream(numbers).mapToInt(Integer::intValue).sum(); System.out.println("数组的和为:" + sum); // 输出:15 }}关键注意事项根据实际需求选择合适的方法即可。