為什么我輸入3的時候,不會catch
import java.awt.TexturePaint;
import java.util.InputMismatchException;
import java.util.Scanner;
public class error extends Exception {
String maths="高數(shù)";
String linux="操作系統(tǒng)";
? ??
? ? ?public void test(){
? ? for(;;) {
? ? try{?
System.out.println("1.按名稱查找。2.按序號查找");
Scanner imput=new Scanner(System.in);
? ? ? ? int num=imput.nextInt();
if(num==1){
System.out.println("請輸入名稱:");
Scanner book=new Scanner(System.in);
String boo=book.next();
if(boo.equals("高數(shù)")){
System.out.println("書籍為高數(shù)");
}
}
if(num==2){
}
? ? }catch (InputMismatchException e) {
System.out.println("請輸入1或者2");
continue;
? ? }
? ? break;
? ? }
? ? ?}
public static void main(String[] args) {
error i=new error();
i.test();
}
}
2017-03-19
num調(diào)用了Scanner對象imput的nextInt()方法,只有在你輸入不為int類型時才會拋出InputMismatchException異常