每次我运行此代码时,控制台进入无限循环打印“请输入数字”。我不明白为什么会发生这种情况。提前致谢。无限循环的来源
boolean check = true;
int temp = 0;
while(check==true){
try{
temp= asker.nextInt();
check = false;
}
catch(InputMismatchException e){
System.out.println("Please input a number.");
}
}
编辑:asker是一个扫描仪。代码的目的是循环直到用户输入一个整数。
我的猜测是'asker.nextInt()'抛出一个异常 – acqu13sce
大概InputMismatchException时发生?如果您在“请输入数字”后添加check = false。代码停止? –
什么是“问”。如果提交者未定义或者没有NextInt()函数,则代码将无限循环 – Sparky