JAVA 中 labeled break 语句

JAVA 中 labeled break 语句

public class Demo {
 
    public static void main(String[] args) {
        int i = 0,j = 5;
        tp:for(;;){
            i++;
            for(;;){
                if(i>j++)
                    break tp;
                 
            }
        }
         
        System.out.println("i="+i+",j="+j);
    }

 

 

第 5 行的 tp:for(;;) 其实是两部分:tp: 是个 label。 后面那个 for(;;) 就是普通的 for 语句,只不过括号中三个控制条件部分都是空的,也就是这个 for 循环是个死循环。 另外,第 7 行的 for 语句同样是死循环。

第 9 行的 break tp; 及前面配套的 tp: ,这是 Java 的 labeled break 语句,主要用于跳出多层循环体。

具体用法是这样的:

  • label 需要放在你想要跳出的循环语句的前面,后跟一个冒号。

    这个例子中 tp 就是 label,它标记在了第 5 行 for 语句的前面。

  • 然后在代码中需要跳出循环的地方写上 break label名;,执行到这里时会跳出前面被标记的循环

    注意:虽然 label 被写在在第 5 行 for 语句前,但第 9 行 break 语句跳出后并不是回到 label 这里执行第 5 行这个 for 语句,而是会跳过这个 for 语句(也就是继续执行第 12 行之后的代码)

这代码中的两层 for 循环都是死循环,如果没有 break 跳出就真的成“死循环”了

 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114843.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号