编程语言
首页 > 编程语言> > java-While循环不适用于Try / Catch语句

java-While循环不适用于Try / Catch语句

作者:互联网

我试图让用户有机会在引入会产生错误但又无法正常工作的东西之后重复输入,因为一旦发现错误,就不会再次执行try东西,而是直接进入catch东西,生成一个永恒的东西. cicle.这是我的代码:

while (err==1){
    err=0;
    try{
        dim = keyboard.nextInt();
    } catch(Exception e){
        System.out.println("Oops! What you entered is not an integer.");
        err=1;
    }
}

解决方法:

当您输入非整数时,对nextInt()的Scanner调用不会使用非整数.您需要调用keyboard.next()(或keyboard.nextLine())来使用它.就像是,

try {
    dim = keyboard.nextInt();
} catch (Exception e) {
    System.out.printf("%s is not an integer.%n", keyboard.next());
    err = 1;
}

标签:java,while-loop,try-catch
来源: https://codeday.me/bug/20191013/1908667.html