【发布时间】:2022-01-14 18:32:22
【问题描述】:
我需要创建一个 1 到 100 的数组并打印元素的总和。
其实我已经把for循环和Array一起用过了!但它不会起作用。
int i, sum = 0;
for(i = 1; i < 100; i++) {
int [] arr = new int [] {i};
sum = sum + arr[i];
}
System.out.println("Sum of all the elements of an array: " + sum);
}
【问题讨论】:
-
您在每次循环迭代中创建一个新数组,其中包含一个元素。那不是你想要的。而
arr[i]的访问会马上抛出ArrayOutOfBoundsException。 -
你知道如何创建一个包含 100 个元素的(空)数组吗?
-
@xFive 您选择作为答案的解决方案是不准确的。尝试运行这两个数组
{1,2,3,4,5,6,7,8,9,10}和{10,2,3,4,5,6,7,8,9,10}。两者加起来都是 55。 -
@xFive 我还注意到
arr[i] = i+1;这行用计数器的值覆盖了数组的值。完全不正确。你不应该改变数组。您应该读取这些值并将它们相加。 -
@xFive 这就是为什么你需要用不同的输入来测试代码。