我希望用户输入一个由以下代码扫描的数字:
scanner.nextInt();
如果用户输入一个字符串,程序会抛出InputMismatchException
,这是显而易见的。我想以这样一种方式捕获异常,即程序提示用户输入输入,直到用户输入一个整数值。
Scanner scanner = new Scanner(System.in);
while(true) {
try {
System.out.println("Please enter a number: ");
int input = scanner.nextInt();
System.out.println(input);
//statements
break;
}
catch(InputMismatchException | NumberFormatException ex ) {
continue;
}
}
如果输入字符串,此代码将创建一个无限循环。