永发信息网

java中如何抛出异常后继续运行

答案:7  悬赏:70  手机版
解决时间 2021-01-30 10:14
  • 提问者网友:抽煙菂渘情少年
  • 2021-01-29 09:44
java中如何抛出异常后继续运行
最佳答案
  • 五星知识达人网友:往事埋风中
  • 2021-01-29 11:04
抛出异常后程序就中断了,不能继续执行,可以在try{}catch(Exception e){}finally{
执行业务逻辑}。只有这种在finally中谢代码 才可以把异常屏蔽掉
全部回答
  • 1楼网友:十年萤火照君眠
  • 2021-01-29 16:02
想要循环继续下去,这样,就不能在循环中抛出异常了,只是打印输出非整数的信息就好了追问可是题目要求忽略非整数,也就是说,输入12 13.2 12的时候,结果应该为24.这怎么破?
  • 2楼网友:孤老序
  • 2021-01-29 14:29
finally {
}
  • 3楼网友:持酒劝斜阳
  • 2021-01-29 14:03
将想要在异常抛出之后还要运行的代码部分放到finally{}里面
  • 4楼网友:夜风逐马
  • 2021-01-29 12:48
java的异常处理机制,try···catch···finaly,继续运行的写在finaly里就好了。
  • 5楼网友:由着我着迷
  • 2021-01-29 12:30
finaly就OK
  • 6楼网友:忘川信使
  • 2021-01-29 12:23
出现InputMismatch后一直循环:
当某一扫描器抛出 InputMismatchException 时,该扫描器不会传递导致该异常的标记,因此可以通过其他某种方法来获取或跳过它。
这是java API文档中的原话。意思是说,如果nextInt方法没有成功解析出一个整数,那么你的输入不会被忽略。因为它或许能被其它格式解析。
那么你的程序中输入了a后,出现异常,number被赋值100,开始下一次循环,但这时数据缓冲区内你上次输入的a还在,并没有清除,这时继续解析a,还是错误,于是这个过程就一直重复下去了。
现在你要改的是,出现错误把这次的输入清除,只要在catch中,加一句:input.next()就搞定了!
也可以将Scanner写在try里面
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯