学过C语言的都知道,有个goto关键字,利用goto关键字可以跳出多重循环或跳到某个运行点。
java中保留了goto关键字,但是没有goto的功能,主要是考虑到安全性吧。不过java跳出多重循环我们可以使用label标记,在多重循环的最外面一个循环前加上label: ,在需要的跳出的地方写break label就OK了,需要说明这里的label也可以换成其他的单词,只要符合java的标示符就OK。
实例一:普通break跳出当前循环,跳不出多重循环
运行结果:
实例二:利用label标记跳出多重循环
运行结果:
java中保留了goto关键字,但是没有goto的功能,主要是考虑到安全性吧。不过java跳出多重循环我们可以使用label标记,在多重循环的最外面一个循环前加上label: ,在需要的跳出的地方写break label就OK了,需要说明这里的label也可以换成其他的单词,只要符合java的标示符就OK。
实例一:普通break跳出当前循环,跳不出多重循环
- public class LoopDemo {
- public static void main(String[] args) {
- for (int i = 0; i < 2; i++) {
- System.out.println("运行第一重循环" + i);
- for (int j = 0; j < 2; j++) {
- System.out.println("运行第二重循环" + j);
- for (int k = 0; k < 2; k++) {
- if(k==1){
- break;
- }
- System.out.println("运行第三重循环" + k);
- System.out.println("******************************");
- }
- }
- }
- }
- }
运行结果:
- 运行第一重循环0
- 运行第二重循环0
- 运行第三重循环0
- ******************************
- 运行第二重循环1
- 运行第三重循环0
- ******************************
- 运行第一重循环1
- 运行第二重循环0
- 运行第三重循环0
- ******************************
- 运行第二重循环1
- 运行第三重循环0
- ******************************
实例二:利用label标记跳出多重循环
- public class LoopDemo {
- public static void main(String[] args) {
- zengzs: for (int i = 0; i < 2; i++) {
- System.out.println("运行第一重循环" + i);
- for (int j = 0; j < 2; j++) {
- // label: for (int j = 0; j <2; i++) {
- System.out.println("运行第二重循环" + j);
- for (int k = 0; k < 2; k++) {
- // break label;
- if (k == 1) {
- System.out.println("跳出多重循环");
- break zengzs;
- }
- System.out.println("运行第三重循环" + k);
- System.out.println("**************************");
- }
- }
- }
- }
- }
运行结果:
- 运行第一重循环0
- 运行第二重循环0
- 运行第三重循环0
- **************************
- 跳出多重循环