用java语言编写一个程序,实现下面功能,如果用户输入的不是一个整数,就提示他反复输入,直到输入一个整数为止
时间: 2023-07-14 12:12:58 浏览: 131
可以使用Java中的Scanner类来实现此功能。我们可以通过Scanner类的nextInt()方法来获取用户输入的整数,如果用户输入的不是整数,会抛出InputMismatchException异常。我们可以使用try-catch语句来捕获该异常,并提示用户反复输入,直到输入一个整数为止。
以下是一个示例代码:
```java
import java.util.Scanner;
import java.util.InputMismatchException;
public class InputInteger {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int num = 0;
boolean isValidInput = false;
while (!isValidInput) {
try {
System.out.print("请输入一个整数:");
num = scanner.nextInt();
isValidInput = true;
} catch (InputMismatchException e) {
System.out.println("输入错误,请重新输入!");
scanner.nextLine();
}
}
System.out.println("您输入的整数是:" + num);
}
}
```
在上面的代码中,我们定义了一个boolean类型的变量isValidInput,用于判断用户输入是否合法。默认情况下,它的值为false,表示输入不合法。我们使用while循环来反复提示用户输入,直到输入合法为止。
在循环中,我们使用try-catch语句来捕获InputMismatchException异常。如果用户输入的不是整数,就会抛出该异常,我们可以在catch块中提示用户重新输入,并调用scanner.nextLine()方法清除输入缓冲区。
如果用户输入的是一个整数,就会执行try块中的代码,将isValidInput的值赋为true,退出循环,并输出用户输入的整数。
阅读全文