Java中跳出循环的方法

2014-11-24 09:53:40 · 作者: · 浏览: 0

众所周知,在Java中,如果想跳出for循环,一般情况下有两种方法:break和continue。

break是跳出当前for循环,如下面代码所示:

[java]
package com.xtfggef.algo;

public class RecTest {

/**
* @param args
*/
public static void main(String[] args) {
for(int i=0; i<10; i++){
if(i==5){
break;
}
System.out.print(i+" ");
}
}
}
输出:0 1 2 3 4
也就是说,break会跳出(终止)当前循环。

continue是跳出当前循环,开使下一循环,如下所示:

[java]
package com.xtfggef.algo;

public class RecTest {

/**
* @param args
*/
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
if (i == 5) {
continue;
}
System.out.print(i+" ");
}
}
}
输出:0 1 2 3 4 6 7 8 9
以上两种方法没有办法跳出多层循环,如果需要从多层循环跳出,则需要使用标签,定义一个标签label,然后再需要跳

出的地方,用break label就行了,代码如下:

[java]
package com.xtfggef.algo;

public class RecTest {

/**
* @param args
*/
public static void main(String[] args) {

loop: for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
for (int k = 0; k < 10; k++) {
for (int h = 0; h < 10; h++) {
if (h == 6) {
break loop;
}
System.out.print(h);
}
}
}
}
System.out.println("\nI'm here!");
}
}
输出:
012345
I'm here!
意思很显然!