gpt4 book ai didi

java - 如何在 while 循环内使用 Scanner hasNextInt() ?

转载 作者:行者123 更新时间:2023-12-01 17:52:06 24 4
gpt4 key购买 nike

我无法退出 while 循环。

我不知道为什么 sc.hasNextInt() 在上次读取数字后不返回 false。

我应该使用其他方法还是我的代码有错误?

public static void main(String[] args) {

// Creating an array by user keyboard input
Scanner sc = new Scanner(System.in);

System.out.println("Length of array: ");
int[] numbers = new int[sc.nextInt()];

System.out.printf("Type in integer elements of array ", numbers.length);
int index = 0;
**while ( sc.hasNextInt()) {**
numbers[index++] = sc.nextInt();


}
// created method for printing arrays
printArray(numbers);
sc.close();


}

最佳答案

执行以下操作:

使用输入长度作为循环的结尾。

        // Creating an array by user keyboard input
Scanner sc = new Scanner(System.in);

System.out.println("Length of array: ");

int len = sc.nextInt();
int[] numbers = new int[len]; // use len here

System.out.printf("Type in integer elements of array ", numbers.length);
int index = 0;
for (index = 0; index < len; index++) { // and use len here
numbers[index] = sc.nextInt();
}
// created method for printing arrays
printArray(numbers);
sc.close();

并且不要关闭扫描仪。

关于java - 如何在 while 循环内使用 Scanner hasNextInt() ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60779348/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com