如何从单个输入中扫描不确定的数字列表?
我做了一个简短的谷歌搜索,发现了hasNextInt(),但它只停止扫描,如果最后一个输入不是整数,而我需要它停止,如果它是最后一个整数。例如,它将继续询问我的列表是否以整数结束。
我的代码:
System.out.println("Enter a list of numbers");
int n = 0;
while (input.hasNextInt()){
n = input.nextInt();
List.push(n);
}
List.displayStack();
答案 0 :(得分:0)
您可以改用hasNext()
。然后解析输入并获取数字 -
int n=0;
Scanner input = new Scanner(System.in);
while (input.hasNext()) {
try {
n = Integer.parseInt(input.nextLine());
//do something eg.- you have done
//List.push(n);
} catch (NumberFormatException nfe) {
//handle exception
}
}
现在,如果输入不是整数,那么它将不会停止。相反,它将用于捕获块。由于catch块仍在while
循环中,因此您现在仍可以使用新输入。
希望它会有所帮助 非常感谢