为什么我这样写异常检查,输入 a 等字符型时,程序会停不下来?是不是因为 i 是int型,没法保存下a,所以会出现这样的问题?有什么好的解决方法不?
public void start()
{
int i = 0;
System.out.println("输入命令:1-按照名称查找图书;2-按照序号查找图书");
try
{
i = input.nextInt();
if(i==1)
noChoose();
else if(i==2)
nameChoose();
typeEx(i);
}
catch(TypeException e)
{
System.out.println("输入命令有误!请根据提示输入数字命令!");
start();
}
catch(InputMismatchException ie)
{
System.out.println("输入命令有误!请根据提示输入数字命令!");
start();
}
}