我需要帮助弄清楚如何使用户输入不超过10的整数,然后将它们添加到数组中并从数组中打印出来。我下面的代码在运行时会询问用户整数,然后永远运行,并且不起作用。我究竟做错了什么?
public static void main(String[] args) {
Scanner input = new Scanner(System.in); // create a new scanner
System.out.print("Enter integers between 1 and 100\n ");
int[] nextNumber = new int[10];
int i = 0;
int number = input.nextInt();
while (i < nextNumber.length){
i++;
nextNumber[i] = number;
number = input.nextInt();
}
int a = 0;
while (a < nextNumber.length){
a++;
System.out.println(nextNumber[a]);
}
最佳答案
在我看来,您增加索引的速度过快。您应该在循环的结尾而不是开始增加索引变量。
我建议您改用for循环,因为它们是为此而设计的:
Scanner input = new Scanner(System.in); // create a new scanner
System.out.print("Enter integers between 1 and 100\n ");
int[] nextNumber = new int[10];
for (int i = 0; i < nextNumber.length; i++){
nextNumber[i] = input.nextInt();
}
for (int a = 0; a < nextNumber.length; a++){
System.out.println(nextNumber[1]);
}
另外,尽管我没有在代码中更改它,但看来您的最后一行应该是:
System.out.println(nextNumber[a]);