以下所有代码均托管在GitHub上面(点击这里直达)
1.有标签的时候结束的是标签后的循环。
private void breakOutLabel(){
out:
for (int i = 0; i <= TIMES; i++) {
for (int j = 0; j <= TIMES; j++) {
System.out.println("i=" + i + " j=" + j);
if (j == 4) {
break out;
}
}
}
}
如果break语句后面接有一个标签,则当满足条件(j==4)的时候,就结束out标签后面紧跟着的循环,当TIMES=10时,输出结果将是
i=0 j=0
i=0 j=1
i=0 j=2
i=0 j=3
i=0 j=4
2.无标签的时候结束的是break所在的内层(仅一层)循环
private void breakInner(){
for (int i = 0; i <= TIMES; i++) {
for (int j = 0; j <= TIMES; j++) {
System.out.println("i=" + i + " j=" + j);
if (j == 4) {
break;
}
}
}
}
如果break语句后面不接标签,则结束的是内层循环剩下的循环语句,跳到外层循环继续执行下一循环语句,得到的结果会不一样(篇幅有限,可以自己试试)
3、用在switch case后面,结束case。
private void breakSwitch(String level) {
switch ( level) {
case "A":
System.out.println("case A...");
break;
case "B":
System.out.println("case B...");
case "C":
System.out.println("case C...");
break;
default:
System.out.println("default...");
}
}
当level="B"时,会输出以下结果。因为case "B"后面没有break,所以会继续执行下去
case B...
case C...
总结:
1、break关键字一般用在for循环里面,有标签则结束的是标签层,无标签则是最内层
2、break还可以与switch case结合使用,一般情况下,每个case后面都应该接一个break
希望对你有所帮助