0%

Java中的goto语句 标签的使用

Java里并没有goto语句,但是标签的功能类似于goto,可以实现代码级的跳转。好吧,反正我之前是没用过这玩意,也不建议用,太复杂了。 直接上代码:

        int i = 0;
        outer: for (; true;) {
            System.out.println("outer");
            inner: for (; i < 10;i++) {
                System.out.println("i=" + i);
                if (i == 2) {
                    System.out.println("continue");
                    //执行continue,会执行for里的i++
                    continue;
                }
                if (i == 3) {
                    System.out.println("break");
                    i++;
                    //执行break,不会执行for里的i++,所以,这里需要i++
                    break;
                }
                if (i == 7) {
                    System.out.println("continue outer");
                    i++;
                    //continue outer后,inner循环结束,不会再i++,所以需要i++,继续执行outer的循环
                    continue outer;
                }
                if (i == 8) {
                    System.out.println("break outer");
                    //中断outer循环,同时inner也中断
                    break outer;
                }
                for(int k=0;k<5;k++)
                {
                    if(k==3){
                        System.out.println("continue inner");
                        continue inner;
                    }
                }

            }
        }

outer和inner是定义标签的名字,可随意 执行结果: outer i=0 continue inner i=1 continue inner i=2 continue i=3 break outer i=4 continue inner i=5 continue inner i=6 continue inner i=7 continue outer outer i=8 break outer