gpt4 book ai didi

Java IOException 无限循环

转载 作者:行者123 更新时间:2023-12-01 22:40:27 26 4
gpt4 key购买 nike

我有这个方法,我想检查用户输入。如果它是一个数字但大于 9 并且小于 1 或 Char/String 我想抛出异常。对于数字它可以工作,但是当我想检查字符/字符串时它会进入无限循环。

private static Scanner in = new Scanner(System.in);

public static int getPlayerPositionInput(String message) {
System.out.println(message);
while(true) {
System.out.println("1");
try {
if(in.hasNextInt()){
int i = in.nextInt();
if(i<1 || i>9 ) throw new IOException();
return i;
} else throw new IOException();
} catch(Exception e) {
System.out.println("The number has to be greater than 0 and less than 10");
}
}
}

我正在考虑使用 ASCII 表,这是一个好主意吗?

最佳答案

如果您输入 String,则 if(in.hasNextInt()){ 将始终为 false,因此无法输入。

尝试使用hasNextnextLine

关于Java IOException 无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26232156/

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