题目:
要求用户输入一个整数,如果用户输入的不是一个整数,就反复提示他输入整数,直到输入正确为止
代码:
import java.util.Scanner;
//如果一个用户输入的不是一个整数,就反复提示他输入整数,直到输入正确为止
public class exercise04 {
public static void main(String[] args) {
//思路
// 1、创建Scanner对象,定义一个变量来存放接收的值
//2、使用无限循环去接收输入(while)
//3、然后将输入的值去转换成int
//4、如果转换的时候发生错误,就会抛出异常,那么说明所输入的不是一个可以转成int的内容
//5、如果没有抛出异常,那么就break,退出循环
Scanner scanner = new Scanner(System.in);//创建Scanner对象
int num = 0;//定义一个变量来存放接收的值
while (true){
System.out.println("请输入一个整数");
try {
num = Integer.parseInt(scanner.next());//这里是将输入的转换成int类型,scanner.next()输入的内容,不管格式
break;//要是可以被转换成int,那么说明输入的正确,就跳出循环
} catch (NumberFormatException e) {//要是输入的不可以转换成int,就会抛出异常
System.out.println("你输入的不是一个整数");//因为无限循环,所以异常抛出后,继续去执行while里面的语句
}
}
System.out.println("输入的值是:"+num);
}
}
输出: