break 与 continue
2019-05-27 本文已影响0人
CCZ_Mark
1. break
break 用来退出当前的循环体.
for (int i = 0; i < 5; i++) {
if (i ==3) break;
System.out.println(i);
}
结果 :
0
1
2
2. continue
退出本次循环
for (int i = 0; i < 5; i++) {
if (i ==3) continue;
System.out.println(i);
}
结果:
0
1
2
4
3. 多层 for 循环
3.1 跳出内部循环
可以看出 continue 跳出了内部的循环, 并不会终止上层的循环, 所以 continue 只针对当前循环体的本次循环, 并不会影响到上一层的 for 循环, 而 break 同理也只会影响到当前的循环体, 并不会影响到上一层的循环, 这里就不赘述了.
那么
for (int i = 0; i < 5; i++) {
for (int j = 6; j < 9; j++) {
if (j ==7 ){
continue;
}
System.out.println(j);
}
System.out.println(i);
}
结果 :
6
8
0
6
8
1
6
8
2
6
8
3
6
8
4
3.2 跳出多层循环体
有时候我们经常遇到这么的需求, 如果内部的循环体一但触发了某些条件, 就要终止所有的循环直接跳出, return 当然可以实现, 但是会直接跳出本次方法, 有时候这并不是我们需要的, 这里要用到一个并不算常用的语法--标签
label: for (int i = 0; i < 5; i++) {
for (int j = 6; j < 9; j++) {
if (j ==7 ){
break label;
}
System.out.println(j);
}
System.out.println(i);
}
System.out.println("100");
结果 :
6
100
可以看到, 我们可以用 break 直接跳转到标签标记的 for 循环处直接终止最外层的循环, 而 循环体外的方法也可以继续执行, 这样就弥补了 return 的不足也更加灵活.