JAVA 利用lable跳出多重循环用法

2018-10-05  本文已影响0人  TryCatch菌

在C语言中有方法叫goto,它可以实现源码级别的跳转,在JAVA中虽然也保留了goto这个关键字,但是名没有对其进行使用,然后我也可以可以利用lable标签通过break或continue进行制定位置的跳转。

package com.test;

public class GoToTest {
    
    public static void main(String[] args) {
        //测试循环过程中使用lable跳出的顺序
        int num = 0;
        System.out.println("outer 标记的位置");
        // lable 标签,名字可以自己取
        outer:
        while(true)
        {
            System.out.println("外层循环开始");
            while(true)
            {
                num++;
                
                if(num == 2)
                {
                    System.out.println("跳出本轮循环,continue");
                    continue;
                }
                if(num == 3)
                {
                    System.out.println("跳转到标签位置,continue outer");
                    continue outer;
                }
                if(num == 4)
                {
                    System.out.println("跳出本层循环 break");
                    break;
                }
                if(num == 6)
                {
                    System.out.println("结束循环,跳出到最外层 break outer");
                    break outer;
                }
                System.out.println("循环次数:" + num);
            }
        }
        System.out.println("outer 循环结束");
    }

}

image.png

从输出结果可以看出
1:不带标签continue只是会中断本轮循环,进入下一轮循环
2:带标签的continue会中断本轮循环,并跳转到标签位置,并重新进入紧接着标签后面的循环
3:不带标签的break会中断循环,并跳出当前循环
4:带标签的break会中断循环并跳转到标签位置,但是不会重新进入紧接着标签后面的循环中。

上一篇下一篇

猜你喜欢

热点阅读