正常Break只能跳出一层循环
public static void main(String[] args) {
for (int i3 = 0; i3 < 2; i3++) {
System.out.println("最外层------------------"+i3);
for (int i = 0; i < 3; i++) {
System.out.println("外层******"+i);
for (int i1 = 0; i1 < 4; i1++) {
System.out.println("内层^^^"+i1);
if("3".equals(i1+"")){
System.out.println("jinqu");
break;
}
}
}
}
}
最外层------------------0
外层******0
内层^^^0
内层^^^1
内层^^^2
内层^^^3
jinqu
外层******1
内层^^^0
内层^^^1
内层^^^2
内层^^^3
jinqu
外层******2
内层^^^0
内层^^^1
内层^^^2
内层^^^3
jinqu
最外层------------------1
外层******0
内层^^^0
内层^^^1
内层^^^2
内层^^^3
jinqu
外层******1
内层^^^0
内层^^^1
内层^^^2
内层^^^3
jinqu
外层******2
内层^^^0
内层^^^1
内层^^^2
内层^^^3
jinqu
想要跳出多层循环定义一个a: (可以是b,aabb,自己定义就好了),如下可以跳出a位置的循环。
public static void main(String[] args) {
b:
for (int i3 = 0; i3 < 2; i3++) {
System.out.println("最外层------------------"+i3);
a:
for (int i = 0; i < 3; i++) {
System.out.println("外层******"+i);
for (int i1 = 0; i1 < 4; i1++) {
System.out.println("内层^^^"+i1);
if("3".equals(i1+"")){
System.out.println("jinqu");
break a;
}
}
}
}
}
最外层------------------0
外层******0
内层^^^0
内层^^^1
内层^^^2
内层^^^3
jinqu
最外层------------------1
外层******0
内层^^^0
内层^^^1
内层^^^2
内层^^^3
jinqu
如下可以跳出b位置的循环,看业务具体定义就好了
public static void main(String[] args) {
b:
for (int i3 = 0; i3 < 2; i3++) {
System.out.println("最外层------------------"+i3);
a:
for (int i = 0; i < 3; i++) {
System.out.println("外层******"+i);
for (int i1 = 0; i1 < 4; i1++) {
System.out.println("内层^^^"+i1);
if("3".equals(i1+"")){
System.out.println("jinqu");
break b;
}
}
}
}
}
最外层------------------0
外层******0
内层^^^0
内层^^^1
内层^^^2
内层^^^3
jinqu