用户输入错误数据时发生无限循环

时间:2018-06-27 20:46:18

标签: java while-loop try-catch

我正在用Java编写一些代码,并且希望用户在程序中输入一个介于一定范围(例如1-100)之间的整数。我试图为用户没有输入整数设置安全措施,但是这会导致无限循环。

int temp = 0;
while (temp <= 0 || temp > 100) {
    try {
        temp = 0;
        System.out.print("Please enter an integer (1-100): ");
        temp = input.nextInt();
    } catch (Exception ex) {
        System.out.println("Integer values only please");
    }
}

当我运行代码但不输入Integer时,它陷入了一个循环,在循环中它永远不会给用户输入新提示的机会,而是直接跳转到陷阱。

0 个答案:

没有答案