还有另一种方法可以在没有break语句的情况下退出循环

时间:2015-11-07 02:34:40

标签: java

我很好奇,因为我一直在使用休息语句,但显然我被告知这是不好的做法。显然,如果符合某些条件,它也可以终止。我只是想知道除了休息之外是否还有别的东西。

3 个答案:

答案 0 :(得分:0)

这会打破for循环。事实上,break在谈论循环时才有意义,因为它们完全从循环中断开,而continue只会进入下一次迭代 试试这个:

for(int i= 0; i<MAX; i++){
if(listEmpt[i] == null){
    listEmpt[i] = employeeObj;
    i=MAX;
}

但我发现使用休息时没问题。总是存在你想要停止处理循环并使用中断的情况;比将循环计数器设置为使循环在下一次迭代中停止的值更有意义(并使其更具可读性!)。

你也可以使用可以突破外部循环(和任意代码块)的标记符号

looplbl: for(int i=;i<;i++){

if (i == temp)
    // do something
else {
    temp = i;
    break looplbl;
}

}

未标记的中断只会突破封闭的开关,for,while或do-while构造。它不会考虑if语句。

See for more details.

答案 1 :(得分:0)

关于休息的使用,you could check here.

由于while循环未被覆盖(我个人经常使用的另一种循环形式),您可以查看循环的设置条件,例如

boolean flag = true;
while (flag) {
    //do something that modifies the below condition
    if (condition) {
        //do something
        flag = false;
    }
}

当条件等于true时循环将终止,因为它将标志设置为false。

答案 2 :(得分:-1)

如果您只是从循环中返回,那就足够了。大多数人认为你必须终止循环,但事实并非如此。

另外,请参阅此answer