java嵌套for循环的跳出
for(Object object : objects) {
            for(Object2 object2 : objects2) {
                if(x>0)......
            }
}

怎么才能让if(x>0)时结束object2的循环,并且让object执行下一次循环 !在线等,求救

14个回答

或者加上一个判断变量,但是那样写起来麻烦。
刚才网络不好,多说两句这个方案。
boolean shouldcontinue;
for(Object object : objects) {
for(Object2 object2 : objects2) {
if(x>0)
{
shouldcontinue = true;
break;
}
}
if (shouldcontinue) continue;
}

caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 当然了,使用boolean变量的做法,虽然麻烦,但是在C C++ Java C# JS(甚至包括Basic Pascal)等一干语言中都是可行的。
5 年多之前 回复

如果是两层循环,只能用goto了,或者加上一个判断变量,但是那样写起来麻烦。

caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 回复THU_Wm: 仔细查了下,还真没有,不过可以在break continue后面加上标号,如图所示
5 年多之前 回复
THU_Wm
THU_Wm 请问java中真的有goto语句吗?
5 年多之前 回复

多层只有goto了。

THU_Wm
THU_Wm 请问java中真的有goto
5 年多之前 回复

不能用contiune跳出当前一层循环吗?

if(x>0)时结束object2的循环,并且让object执行下一次循环 !
直接在if(x>0){break;};不就结束object2,开始object下一循环了吗?x,是成员变量吗?

http://lavasoft.blog.51cto.com/62575/178997/
如果看不到图,看这里。

for(Object object : objects) {
for(Object2 object2 : objects2) {
if(x>0) {
break;
}
}
if(x>0) {
continue;
}
}

最好是不要用goto 把break 和continue好好看看

firstFor: for(int i = 0; i < 5; i++){
for(int j = 0 ; j < 5; j++){
continue firstFor;
}
System.out.println(5) ;
}

给你来一个例子,这里应该可以看懂吧,这里的firstFor相当于你给你的for循环起了一个名字,然后在名字后面加一个":"就可以写for循环了
然后continue firstFor;就是你要继续叫这个名字的for循环。名字你可以随便起。

Chevalier_Zero
Chevalier_Zero 额外说一下,break也可以这么写。goto在java应该已经用不了了,不过这个很像goto语句。如果具体的逻辑还是不会,可以告诉我,我帮你把这个例子运用到你的代码里。
5 年多之前 回复
共14条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问