java中异常java.util.InputMismatchException怎么解决?

System.out.println("-------------小说列表结束-------------");Stringtxtname="";while(true){S... System.out.println("-------------小说列表结束-------------");
String txtname = "";
while (true) {
System.out.print("阅读和下载请选择文件序号,上传TXT请输入-1,返回请输入0:");
int choice = input.nextInt();
if (choice != 0 && choice != -1 && choice >= 1 && choice <= numbers) {
txtname = name[choice];
System.out.println("-------------------------------------");
System.out.println("0、返回上一级菜单\n1、在线阅读\n2、下载TXT");
System.out.println("-------------------------------------");
System.out.print("请选择:");
int readdown = input.nextInt();
if (readdown == 0) {
txtListMenu(num);
break;
} else if (readdown == 1) {
// 在线阅读选择的小说,传递小说类型num和小说名txtname
txtOnline(num, txtname);
break;
} else if (readdown == 2) {
// 下载读选择的小说,传递小说类型num和小说名txtname
txtDownload(num, txtname);
break;
} else {
System.out.println("**********************************");
System.out.println("选择小说操作有误,请重新选择小说!");
System.out.println("**********************************");
continue;
}
} else if (choice == 0) {
// 调用小说类型选择列表
txtTypeMenu();
break;
} else if (choice == -1) {
// 调用小说上传功能
txtUpload(num);
break;
} else {
// 输入选择数字错误,循环
System.out.println("**********************************");
System.out.println("选择小说操作有误,请重新选择小说!");
System.out.println("**********************************");
continue;
}
}
}
展开
 我来答
双子座aimee
2018-01-05 · TA获得超过1万个赞
知道小有建树答主
回答量:543
采纳率:95%
帮助的人:14.7万
展开全部

建议:

1、对输入的数据处理一下,比如不是数字就不往下走之类的,然后再往下走就好了。

2、nextint,即输入的必须是整数,而你输入字符。

JAVA中的异常可以大体上分为三大类:

Error,RuntimeException,Exception 基类Throwable派生的。

使用的方法也是基本一致的,都是通过关键字throw+Throwable的形式报告这个异常或错误。

但是这三类Throwable对象所代表的错误的含义和使用的场景是不同的:

1.Error,这个一般是指程序无法处理的异常,如内存溢出,进程被强行结束等。

2.RuntimeException是指由于代码编写方式不当而造成的异常。

3.Exception就更像是一般意义上的异常。它一般是指程序在运行时碰到了一些意外,但是程序还可以处理的情况。比如网络断开了,用户弹出了SD卡等等。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式