Scanner sc = new Scanner(System.in);
int num = 0;
while ( true) {
try {
System.out.println("请输入整数..");
num = sc.nextInt();
break;
} catch (InputMismatchException e) {
System.out.println("输入数据有误");
System.out.println("请重新输入..");
}
}
System.out.println("刚才输入的整数是:"+num);
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = 0;
while (true) {
try {
System.out.println("请输入整数..");
num = sc.nextInt();
break;
} catch (InputMismatchException e) {
System.out.println("输入数据有误");
System.out.println("请重新输入..");
sc=new Scanner(System.in);//重置Scanner对象sc
}
}
System.out.println("刚才输入的整数是:"+num);
}
二:Scanner在while循环内的时候
public static void main(String[] args) {
int num = 0;
while (true) {
try {
Scanner sc = new Scanner(System.in);
System.out.println("请输入整数..");
num = sc.nextInt();
break;
} catch (InputMismatchException e) {
System.out.println("输入数据有误");
System.out.println("请重新输入..");
}
}
System.out.println("刚才输入的整数是:"+num);
}