我的代码是:
int total = 10;
int[] myArray = new int [total];
System.out.println("Enter numbers. To stop, enter 0.")
int numbers = input.nextInt();
while (numbers != 0) {
for (int i = 0; i < total; i ++)
myArray[i] = numbers;
numbers = input.nextInt();
}
for (int i = 0; i < myArray.length; i++)
System.out.print(myArray[i] + ", ") //This line only prints the last number I enter 10 times.
我希望能够用我输入的数字打印整个数组。例如:
我输入:1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 0
但我得到的结果是:10, 10, 10, 10, 10, 10, 10, 10, 10, 10
编辑2:很好。我知道它是怎么回事。我会将我的问题提交给其他一些更有帮助的网站。感谢您的&#34;服务&#34; Stack Exchange。
答案 0 :(得分:1)
您的for循环每次都会重置阵列中的所有项目。我怀疑你是否打算这样做。
答案 1 :(得分:0)
你可以这样做:
i
循环之外声明while
并使用0
进行初始化。while
循环条件更改为numbers != 0 && i < total
。for
循环中的while
循环。myArray[i] = numbers;
和i++;
来替换for
循环。以下是代码:
int numbers = input.nextInt();
int i = 0;
while (numbers != 0 && i < total) {
myArray[i] = numbers;
i++;
numbers = input.nextInt();
}
Here您的代码正常运行。