JAVA中,多重循环(多个FOR),如果只在其中一个循环中break那么,只能跳出当前循环。这里有3个办法可以解决。
一、使用类似C语言中的GOTO。
STOP:
for(int i = 0; i < 10; i++){
for(int j = 0; j < 10;j++){
if(j > 3){
System.out.println("i="+i);
System.out.println("j="+j);
break STOP;
}
}
}
二、使用判断的方式加条件。
boolean b = true;
for(int i = 0; i < 10 && b; i++){
for(int j = 0; j < 10 && b;j++){
if(j > 3){
System.out.println("i="+i);
System.out.println("j="+j);
b = false;
}
}
}
三、实现方式类似于第二种(来源于网友)。
int array[][] = { { 5, 7, 6, 4, 9 }, { 1, 2, 8, 3, 2 } };
boolean flag = false;
for (int i = 0; i < array.length && !flag; i++) { //当flag为true时跳出循环
for (int j = 0; j < array[i].length; j++) {
if (array[i][j] == 8) {
flag = true;
break;
}
}
}