在JAVA中输入无效的扫描仪后如何重新运行代码

时间:2018-08-01 08:19:14

标签: java loops if-statement

我刚刚开始学习JAVA,在用户输入错误的数据类型后,我找不到重新运行此代码的方法。 我已经搜索了堆栈溢出问题,但是找不到解决方案。 谢谢。

int j = 0;
System.out.println("Hello, how many numbers would you like to save?");

boolean hasNextInt2 = scanner.hasNextInt();

if(hasNextInt2){
    j = scanner.nextInt();
} else {
    System.out.println("Please enter a valid number");

}

1 个答案:

答案 0 :(得分:1)

只需将其放入循环中,然后在输入正常时将break移出循环即可:

while (true) {
    if (scanner.hasNextInt()) {
        j = scanner.nextInt();
        break;
    } else {
        // Consume the wrong input
        scanner.next();

        System.out.println("Please enter a valid number");        
    }
}