我们可以使用try-catch语句来捕捉异常并给出错误提示,然后继续执行程序。以下是一个示例代码来解决这个问题:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int number = 0;
boolean isValidInput = false;
while (!isValidInput) {
try {
System.out.print("请输入一个数字:");
String input = scanner.next();
number = Integer.parseInt(input);
isValidInput = true;
} catch (NumberFormatException ex) {
System.out.println("输入错误,请输入一个数字!");
}
}
System.out.println("输入的数字是:" + number);
}
}
在上面的代码中,我们使用了一个while循环来不断询问用户输入数字,直到用户输入了一个合法的数字为止。在每次尝试读取用户输入时,我们使用try-catch语句块来捕捉NumberFormatException异常。如果用户输入非数字字符,那么就会触发这个异常,我们就会给出错误提示并让用户重新输入数字。只有当用户输入了一个数字,程序才会继续往下执行。