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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mysql 快速 修改 表名

    mysql 快速 修改 表名2019独角兽企业重金招聘Python工程师标准>>>…

    2022年5月6日
    50
  • 中文情感词典的构建与使用_文本情感识别

    中文情感词典的构建与使用_文本情感识别首先,国外英文的情感分析已经取得了很好的效果,得益于英文单词自身分析的便捷性与英文大量的数据集WordNet。但由于中文的多变性,语义的多重性与数据集的缺乏,使得国内的情感分析暂落后于国外。本文将记录博主在项目中构建情感词典的经验,欢迎大家指正。我们首先将情感词典分为通用情感词典与专用情感词典。1.通用情感词典的构建通用情感词典的构建主要是通过将目前开源的情感词典整合起来,筛去重复和无…

    2022年8月23日
    10
  • 应用程序无法启动0xc0000005怎么解决_错误代码0x000000A5

    应用程序无法启动0xc0000005怎么解决_错误代码0x000000A5应用程序无法正常启动0xc0000005怎么办?应用程序可以满足不同用户的需求,帮助我们解决不同问题,拓展了计算机领域,给我们使用电脑提供了方便。如果打开应用程序时出现0xc0000005错误怎么办呢?接下来,我就将详细的解决方法分享给你们近来有很多网友询问0xc0000005错误的解决方法,在使用电脑的时候经常会出现一些错误提示,应用程序无法正常启动0xc0000005错误问题还是第一次遇到。今…

    2022年10月4日
    5
  • 数据字典表设计「建议收藏」

    为什么字典表?在实际项目开发过程中常遇到下面场景:某些变量在多个地方使用,而且一般是固定的,但是随着系统升级和后期变化,可能需要改变,如果这些变量写死在代码里面将会变得难以维护,所以要将其从代码中抽离出来。一般的业务系统客户端与用户交互的时候都会使用下拉框组件,对于某些比较固定的值的下拉组件的数据来源一般都是比较固定的一类数值。解决方案有的做法是使用枚举或者Constants常量类来实现,这种情况下在量少的前提是没问题的,而且一旦需要修改就得修改源码;随着系统的开发拓展,后期将无法维护,甚至命名困难

    2022年4月9日
    85
  • MySql 字段类型对应 Java 实体类型

    MySql 字段类型对应 Java 实体类型MySql 字段类型对应 Java 实体类型前言 CopyMySQLCon J 对于 MySql 数据类型和 Java 数据类型之间的转换是很灵活的 一般来讲 任何 MySql 数据类型都可以被转换为一个 java lang String 任何 MySql 数字类型都可以被转换为任何一种 Java 数字类型 当然这样也可能出一些四舍五入 溢出 精度丢失之类的问题 Java 基础类型与包装类型 Copya 如果数据库字段是允许为空的 使用包

    2025年10月15日
    4
  • elasticsearch 入门安装

    elasticsearch 入门安装

    2022年2月18日
    53

发表回复

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

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