Java使用break和continue关键字控制循环详解

 更新时间:2026年06月30日 09:34:07   作者:石山代码  
这段内容介绍了break和continue在循环中的作用,break用于终止整个循环,而continue仅跳过当前循环迭代,文章还详细解释了带标签的break和continue在多层循环中的应用,并强调了使用continue时应注意的关键点,需要的朋友可以参考下

一、break:直接终止整个循环

作用:跳出当前所在循环,循环彻底结束,后续循环不再执行。

1. 普通while循环使用break

int i = 1;
while (i <= 10) {
    if (i == 5) {
        break; // i=5时,直接退出while循环
    }
    System.out.println(i);
    i++;
}
// 输出:1 2 3 4

2. 带标签break(跳出多层循环)

给外层循环定义标签,可一次性跳出内外两层循环:

outer: while (true) {
    int j = 1;
    while (j <= 5) {
        if (j == 3) {
            break outer; // 直接跳出外层while
        }
        System.out.println(j);
        j++;
    }
}

二、continue:跳过本次循环,进入下一轮

作用:立刻结束当前这一次循环体剩余代码,直接回到循环条件判断,不会终止整体循环。

int i = 1;
while (i <= 5) {
    if (i == 3) {
        i++;
        continue; // i=3时,跳过下面打印,直接下一轮
    }
    System.out.println(i);
    i++;
}
// 输出:1 2 4 5

带标签continue(多层循环跳过外层本轮)

outer: for (int x = 1; x <= 3; x++) {
    for (int y = 1; y <= 3; y++) {
        if (y == 2) {
            continue outer; // 跳过当前x这一轮,x直接+1
        }
        System.out.print(y);
    }
}

三、核心区别总结

  1. break
    终止整个循环,循环直接结束;
  2. continue
    仅跳过当前这一次迭代,循环继续运行。

四、关键注意点

  1. while循环使用continue时,自增变量要写在continue前面,否则会死循环:
// 错误写法,死循环
int i = 1;
while(i <= 5){
    if(i == 3){
        continue; // i永远是3,无法自增
    }
    i++;
}
  1. 标签只能作用于循环,不能单独使用;
  2. break/continue仅对自身所在一层循环生效,多层循环需标签。

到此这篇关于Java使用break和continue关键字控制循环详解的文章就介绍到这了,更多相关Java break和continue控制循环内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java 获取数据库连接的实现代码

    java 获取数据库连接的实现代码

    本篇文章是对在java中获取数据库连接的实现代码进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • springboot+mybatis一对多查询+懒加载实例

    springboot+mybatis一对多查询+懒加载实例

    文章介绍了如何在Spring Boot和MyBatis中实现一对多查询的懒加载,通过配置MyBatis的`fetchType`属性,可以全局启用懒加载,或者在个别需要时关闭懒加载,文章通过代码示例和测试结果,展示了懒加载的实现过程
    2025-11-11
  • 解决Mybatis 大数据量的批量insert问题

    解决Mybatis 大数据量的批量insert问题

    这篇文章主要介绍了解决Mybatis 大数据量的批量insert问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • FileUtils.deleteQuietly()删除失效的原因分析及解决

    FileUtils.deleteQuietly()删除失效的原因分析及解决

    文章讨论了使用FileUtils.deleteQuietly方法删除文件时可能遇到的问题,包括文件被占用、权限问题和中文乱码问题,特别指出,如果文件路径含中文可能因编码问题导致路径错误,建议将项目编码设置为UTF-8解决乱码问题
    2025-10-10
  • idea的运行按钮是灰色问题及解决

    idea的运行按钮是灰色问题及解决

    这篇文章主要介绍了idea的运行按钮是灰色问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • Idea启动SpringBoot程序报错:Veb server failed to start. Port 8082 was already in use;端口冲突的原理与解决方案

    Idea启动SpringBoot程序报错:Veb server failed to&nbs

    这篇文章主要介绍了Idea启动SpringBoot程序报错:Veb server failed to start. Port 8082 was already in use;端口冲突的原理与解决方案,文中通过代码示例介绍的非常详细,需要的朋友可以参考下
    2024-10-10
  • 详解Java多态对象的类型转换与动态绑定

    详解Java多态对象的类型转换与动态绑定

    这篇文章主要介绍了详解Java多态对象的类型转换与动态绑定,是Java入门学习中的基础知识,需要的朋友可以参考下
    2015-09-09
  • Java多线程 线程组原理及实例详解

    Java多线程 线程组原理及实例详解

    这篇文章主要介绍了Java多线程 线程组原理及实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • SpringBoot JavaMailSender发送邮件功能

    SpringBoot JavaMailSender发送邮件功能

    这篇文章主要为大家详细介绍了SpringBoot JavaMailSender发送邮件功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-04-04
  • 在Java中使用日志框架log4j的方法

    在Java中使用日志框架log4j的方法

    Log4j有三个主要的组件/对象:Loggers(记录器),Appenders (输出源)和Layouts(布局)。这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出,今天通过本文给大家分享Java日志框架log4j的相关知识,感兴趣的朋友一起看看吧
    2021-08-08

最新评论