下面代码中第一个break可以不写吗?

下面代码中第一个break可以不写吗?

                              ​case 3:
//在指定位置插入数据
if(a!=null) {
System.out.println("请输入要插入的数据:");
try {
n=sc.nextInt();
System.out.println("请输入要插入的数据的位置:");
k=sc.nextInt();
}catch(InputMismatchException e) {
System.out.println("输入的数据格式有误,不能有非数字!");
sc.next();
break;//第一个break
}
dm.insertAtArray(a, n, k);
dm.showData(a, a.length);
}else {
System.out.println("还未在数组中插入数据,请重新选择操作!");
}
break;//第二个break


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

不可以,捕获异常(即输入格式有误)会进入直接catcah语句(try后面的不执行),然后如果没有第一个break语句,执行完catcah语句后会执行后续语句,也就是dm.insetAtArray(a,n,k);及其后面的语句,这个时候会出错(本来try-catch语句的目的就是为了预防这边出错的),添加break后,执行完catch语句之后直接跳出switch语句,不会执行后面的了

  • dh1211 #1

    下次代码部分建议用代码块写代码哈,这个页面上有的(有个代码语言的东东),不然对于小白来说看起来很头疼哒

    2021-02-13 22:05:40
好帮手慕阿园 2021-02-18 10:54:32

同学你好,上面同学说法是正确的,break是不能去掉的,如果去掉会继续执行后面的代码,导致程序出现异常,同学可以将这个break去掉后,自己执行下代码试试呐

祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师