在Java中打破for语句

时间:2015-04-08 08:42:02

标签: java

如果我做这样的事情

boolean ret;
for(int i = 2;i<30;i++) {
  if ( 30%i == 0){
    ret = true;
  } else {
    ret = false;
  }
}

ret在2,但也在5,10 15时变为真,无论如何,只要ret变为真,就会突破for语句吗?

3 个答案:

答案 0 :(得分:3)

您是否考虑过break命令

boolean ret = false;
for(int i = 2; i < 30; i++){
    if(30%i == 0){
       ret = true;
       break;
    }
}

答案 1 :(得分:3)

不使用结构破坏指令,您只需执行检查for条件。

boolean ret = false;
for(int i = 2;i<30 && !ret;i++) {
    if ( 30%i == 0){
        ret = true;
    } else {
        ret = false;
    }
}

答案 2 :(得分:2)

你不能突破if。当它决定条件走向何方时,它已经结束了,没有什么可以跳过的了。你只能摆脱循环,比如for

但是,提前退出的无比更好的方法是将示例代码放入方法并使用return。更具可读性,并且使用良好的方法名称,整个代码(以及return)的目的立即明确。