设置一个 error 遍历判断是否有异常产生并被捕获,每次进入遍历后设置 error 为 false,防止输入错误值后再输入正确值无法退出的情况产生
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class test {
public static void main(String[] args) {
BufferedReader keyboardIn = new BufferedReader(new InputStreamReader(System.in));
boolean error = false;
int user_answer = 0;
do {
error = false;
try {
user_answer = Integer.parseInt(keyboardIn.readLine());
} catch (NumberFormatException | IOException e) {
System.out.println("输入错误,请重新输入");
error = true;
}
} while (error);
System.out.println(user_answer);
}
}