转到Java中的For循环中的下一个迭代

问题

在java中有一个令牌跳过for循环的其余部分吗?像java这样的东西,如4336663112。


#1 热门回答(270 赞)

continue;

continue;关键字将在调用时启动下一次迭代
对于示例

for(int i= 0 ; i < 5; i++){
 if(i==2){
  continue;
 }
System.out.print(i);
}

这将打印出来

0134

请参阅-文档


#2 热门回答(41 赞)

尝试这个,
1. If you want to skip a particular iteration, use continue.
2. If you want to break out of the immediate loop use break

3 If there are 2 loop, outer and inner.... and you want to break out of both the loop from``the inner loop, use break with label.

例如:
继续

for(int i=0 ; i<5 ; i++){

    if (i==2){

      continue;
    }
 }

例如:
休息

for(int i=0 ; i<5 ; i++){

        if (i==2){

          break;
        }
     }

例如:
打破标签

lab1: for(int j=0 ; j<5 ; j++){
     for(int i=0 ; i<5 ; i++){

        if (i==2){

          break lab1;
        }
     }
  }

#3 热门回答(29 赞)

如果你想跳过当前的迭代,使用continue;.

for(int i = 0; i < 5; i++){
    if (i == 2){
        continue;
    }
 }

需要打破整个循环? Usebreak;

for(int i = 0; i < 5; i++){
    if (i == 2){
        break;
    }
}

若需要突破多个循环使用break someLabel;

outerLoop:                                           // Label the loop
for(int j = 0; j < 5; j++){
     for(int i = 0; i < 5; i++){
        if (i==2){
          break outerLoop;
        }
     }
  }

*请注意,在这种情况下,你没有在代码中标记要跳转到的点,你正在标记循环!所以在休息之后,代码将在循环之后继续!
当你需要在嵌套循环中跳过一次迭代时使用continue someLabel;,但你也可以将它们全部组合起来.

outerLoop:
for(int j = 0; j < 10; j++){
     innerLoop:
     for(int i = 0; i < 10; i++){
        if (i + j == 2){
          continue innerLoop;
        }
        if (i + j == 4){
          continue outerLoop;
        }
        if (i + j == 6){
          break innerLoop;
        }
        if (i + j == 8){
          break outerLoop;
        }
     }
  }