标号

作用:

通过给语句块加标号可以赋予语句块名称。

标号位于语句块之前,标号只能被continue和break引用。

标号标识的语句块一般是多层循环结构。

break只能跳出单层循环,对于多层循环通过break后加标号的方式可跳出标号所标识的循环体。

continue的用法与break类似,只是作用和效果不同。


 示例:(跳出整个循环)

label: for (int i = 0; i < 3; i++) {
            for (int j = 0; j < 3; j++) {
                System.out.println("i=" + i + ",j=" + j);
                if (j == 1)
                    break label;
            }
        }
一个语句块前可有多个标号(选择l1,l2效果一样)
l1: l2: for (int i = 0; i < 3; i++) {
            for (int j = 0; j < 3; j++) {
                System.out.println("i=" + i + ",j=" + j);
                if (j == 1)
                    break l2;
            }
        }
多层嵌套循环可每层放置一个标号,通过break加标号可精确跳转到具体某一层
注意:
1、各层的标号不能同名;2、外循环不能调用内循环的标号
l1: for (int i = 0; i < 3; i++) {
            l2: for (int j = 0; j < 3; j++) {
                l3: for (int k = 0; k < 3; k++) {
                    System.out.println("i=" + i + ",j=" + j + ",k=" + k);
                    if (k == 1)
                        break l2;
                }
            }
        }
 
原文地址:https://www.cnblogs.com/SQP51312/p/6064711.html