Java中For循环中的GoTo Next迭代
Posted
技术标签:
【中文标题】Java中For循环中的GoTo Next迭代【英文标题】:GoTo Next Iteration in For Loop in java 【发布时间】:2012-06-25 00:47:43 【问题描述】:java 中是否有一个标记跳过了 for 循环的其余部分? java中的VB's Continue之类的东西。
【问题讨论】:
【参考方案1】:continue;
continue;
关键字将在调用时开始下一次迭代
举例
for(int i= 0 ; i < 5; i++)
if(i==2)
continue;
System.out.print(i);
这将打印出来
0134
见
Document【讨论】:
和break
将跳过循环:)
“break”关键字会终止循环。【参考方案2】:
试试这个,
如果您想跳过特定的迭代,请使用continue
。
如果您想跳出立即循环,请使用break
如果有 2 个循环,即外部循环和内部循环......并且您想从内部循环中跳出两个循环,请使用 break 和 label (another question about 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;
【讨论】:
还有continue with label。【参考方案3】:如果您想跳过当前迭代,请使用continue;
。
for(int i = 0; i < 5; i++)
if (i == 2)
continue;
需要跳出整个循环?使用break;
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;
*请注意,在这种情况下,您不是在代码中标记要跳转到的点,而是在标记循环!所以在 break 之后代码将在循环之后继续!
当您需要在嵌套循环中跳过一次迭代时,请使用 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;
【讨论】:
【参考方案4】:正如所有其他答案中提到的,关键字continue
将跳到当前迭代的末尾。
此外,您可以标记循环开始,然后使用continue [labelname];
或break [labelname];
来控制嵌套循环中发生的事情:
loop1: for (int i = 1; i < 10; i++)
loop2: for (int j = 1; j < 10; j++)
if (i + j == 10)
continue loop1;
System.out.print(j);
System.out.println();
【讨论】:
【参考方案5】:使用continue
关键字。阅读here。
continue 语句跳过 for、while 或 do-while 循环的当前迭代。
【讨论】:
【参考方案6】:使用continue关键字。
前:
for(int i = 0; i < 10; i++)
if(i == 5)
continue;
【讨论】:
以上是关于Java中For循环中的GoTo Next迭代的主要内容,如果未能解决你的问题,请参考以下文章