社区
Java EE
帖子详情
一个方法中的一个循环里throw 一个异常,会立刻结束该方法,还是结束本次循环而进入下次循环(当条件成立时)??
gyscsdn
2003-12-11 12:40:22
一个方法中的一个循环里throw 一个异常,会立刻结束该方法,还是结束本次循环而进入下次循环(当条件成立时)??
...全文
1170
8
打赏
收藏
一个方法中的一个循环里throw 一个异常,会立刻结束该方法,还是结束本次循环而进入下次循环(当条件成立时)??
一个方法中的一个循环里throw 一个异常,会立刻结束该方法,还是结束本次循环而进入下次循环(当条件成立时)??
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
junyi2003
2003-12-11
打赏
举报
回复
学习!!!
gyscsdn
2003-12-11
打赏
举报
回复
to 小强:
for (int i = 0; i < ddd.size(); i++) {
ArrayList temp1 = (ArrayList) ddd.get(i);
//temp1中所有的元素都是Double
Double s = new Double(0.0);
try {
if (i != 2)
s = (Double) (temp1.get(0));
else
temp1 = (ArrayList) (temp1.get(0)); //exception
}
catch (ClassCastException ex) {
System.out.println("catch ClassCastException");把这句替换为
throw new ClassCastException();
}
System.out.println("T is " + s.doubleValue();
}
System.out.println("catch ClassCastException");把这句替换为
throw new ClassCastException();
呢??
flowercat
2003-12-11
打赏
举报
回复
2.跳出所有循环。
//ddd 是一个包含ArrayList对象的ArrayList
try {
for (int i = 0; i < ddd.size(); i++) {
ArrayList temp1 = (ArrayList) ddd.get(i);
//temp1中所有的元素都是Double
Double s = new Double(0.0);
if (i != 2)
s = (Double) (temp1.get(0));
else
temp1 = (ArrayList) (temp1.get(0)); //exception
System.out.println("T is " + s.doubleValue();
}
}
catch (ClassCastException ex) {
System.out.println("catch ClassCastException");
}
flowercat
2003-12-11
打赏
举报
回复
看代码:
1.结束当前循环,到下一次循环。
//ddd 是一个包含ArrayList对象的ArrayList
for (int i = 0; i < ddd.size(); i++) {
ArrayList temp1 = (ArrayList) ddd.get(i);
//temp1中所有的元素都是Double
Double s = new Double(0.0);
try {
if (i != 2)
s = (Double) (temp1.get(0));
else
temp1 = (ArrayList) (temp1.get(0)); //exception
}
catch (ClassCastException ex) {
System.out.println("catch ClassCastException");
}
System.out.println("T is " + s.doubleValue();
}
flowercat
2003-12-11
打赏
举报
回复
其实很简单,写个测试程序不就知道了!一层一层把异常传到能捕获的地方,如果没有捕获则直到传到main。
其实楼上的都不是绝对的,它可以结束本次循环,到下一次循环,也可以直接跳出所有的循环,关键是看你的异常处理是在哪!
cuij7718
2003-12-11
打赏
举报
回复
楼上说得没错,只是结束本次循环,然后接着进行下一次循环
gyscsdn
2003-12-11
打赏
举报
回复
to ZeroC:
好像不是你说得那样!
象是结束本次循环而进入下次循环(当条件成立时)
ZeroC
2003-12-11
打赏
举报
回复
结束方法跳到上一层
利用
throw
方法
在
循环
结束
后终止代码执行
在原生js
中
,函数内部的for
循环
,我们可以利用return终止
循环
并停止
循环
后面的代码执行,如下 而在jq的$.each()的遍历
中
,return可以跳过当前的一次
循环
,return false则可以终止
循环
,但是它们都无法阻止
循环
之后的代继续执行码。 但是有
时
候我们确实要在遍历达成某种
条件
时
既
结束
遍历,又终止之后的代码继续执行,怎么做呢?之前我是这么做的,加个变量做判断。 这样当...
JS 跳出
循环
的几种
方法
(return、break、continue、
throw
等)
只输出了1和2,第三次
循环
中
return跳出了
循环
,同
时
也阻止了后面代码的执行,这就是return的特性:当执行return语句
时
,即使函数主体
中
还有其他语句,函数执行也
会
停止!通过输出了 end 可以看出他跟 return 语句的不同之处,break 语句只是跳出了当前
循环
语句,并不
会
阻止函数内其他语句的执行。所不同的是,它不是退出
一个
循环
,而是跳出当前
循环
,继续下一轮
循环
。看打印的结果,不仅阻断了命名
循环
的执行,而且执行命名
循环
后续的代码。相当于强制抛错
中
断执行,不仅终止了
循环
,后续代码也不再执行。
Java
中
try-catch,
throw
和
throw
s的使用
Java
中
的
异常
有很多,这种
异常
机制,可以帮助处理程序
中
未知的错误。关于
异常
的处理有try catch 程序块、
throw
、
throw
s。 以下分别对这三种进行介绍。 一、try...catch try-catch用来捕获代码段的
异常
并做出处理 try-catch代码块分两块,第一块是try{} ,第二块是catch(exception的引用){}。 try-catch一般放在
循环
放...
java
中
循环
里
使用
throw
new抛出
异常
问题
在
一个
循环
里
如果使用
throw
new抛出
异常
如下 那么就
会
直接终止
循环
操作,下边的业务代码就都不
会
执行。 解决办法就是不要再
循环
里
加入
throw
new抛
异常
, 建议直接记录日志就好,然后用 continue;来跳出
本次
循环
,继续进行下一次
循环
...
实现js
中
的forEach
方法
中
:
中
途跳出
循环
和
throw
new Error()
方法
一:使用return可以
结束
本次
循环
,但不是跳出
循环
(失败)
方法
二:forEach跳出
循环
;
方法
: try catch (成功跳出forEach跳
循环
) 此案例容易出错点 终止for
循环
可以使用break,continue。在forEach
中
使用
会
报错;因为forEach是
一个
函数当Error像
一个
函数一样被使用
时
,也就是没有new,它将返回
一个
Error对象。因此,仅仅调用Error将产生与通过new关键字构造
一个
Error对象相同的输出。 通过Error的构造器可以创建
一个
错误对象。
Java EE
67,535
社区成员
225,852
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章