开发中,碰到了多层循环,需要直接跳出多层循环
for(int i = 0; i < 10; i++){
for(int j = 0; j < 5; j++){
if(j == 2){
//跳出多层循环,进入外部程序
}
}
}
此时发现,使用break,continue只能跳出一层循环,但是跳不到循环的外边。
此时有两种解决办法:
方法一:使用标识
for(int i = 0; i < 10; i++){
boolean flag = false;
for(int j = 0; j < 5; j++){
if(j == 2){
//跳出多层循环,进入外部程序
flag = true;
break;
}
}
if(flag){
break;//跳出外层循环
}
}
方法二:java中提供了标签使用
outer://外部for循环标签
for(int i = 0; i < 10; i++){
inner://内部for循环标签
for(int j = 0; j < 5; j++){
System.out.println("内部循环执行" + j + "次");
if(j == 2){
//跳出多层循环,进入外部程序
break outer;//跳至出外部for循环
}
}
}
System.out.println("跳出循环,进入程序");
在循环的上面加一个outer:或者inner:作为标签,就可以跳出标签标识的循环
注意:标签的名字自己定义即可