【Java基础】05多重循环及程序调试(break continue return的区别 idea程序调试快捷键)

文章目录

多重循环

一个循环体内又包含另一个完整的循环结构 。

如:while 循环内部包含while 循环、while 循环内部包含for 循环、do while 循环内部包含do while 循环、for 循环内部包含for 循环等。使用时应注意:

  • 各循环可互相嵌套
  • 一般不超过三层
  • 外层循环变量变化一次,内层循环变量要变化一遍

break语句

break改变程序控制流,用于do-while、while、for循环中,终止某个循环,程序跳转到循环块外的下一条语句。

  • 通常在循环中与条件语句一起使用
  • 使用场合:break常用于switch结构和循环结构中
java 复制代码
for(int i = 1; i <= 10; i++) {
    if(i == 9) {
        break;
    }
    System.out.println("i = " + i);
}
// 输出到i = 8停止

continue语句

continue只能用在循环里,作用是跳出本次循环,进入下一次循环。

  • 通常与条件语句一起使用,加速循环
  • 使用场合:continue一般用于循环结构中
java 复制代码
for(int i = 1; i <= 10; i++) {
    if(i == 9) {
        continue;
    }
    System.out.println("i = " + i);
}
// 未输出i = 9

return语句

return结束一个方法。 一旦在循环体内执行到一个return语句,return语句将会结束该方法,循环自然也随之结束。与continue和break不同的是,return直接结束整个方法,不管这个return处于多少层循环之内。

程序调试

发现和定位程序中的错误,可以通过代码阅读或者加输出语句查找程序错误,当程序结构越来越复杂时,需要专门的技术来发现和定位错误,就是"程序调试"。

程序调试过程

  • 设置断点(程序暂停执行的代码行)
  • 单步运行
  • 观察变量

idea调试快捷键

快捷键 英文说明 中文说明
F8 Step over 跳到当前代码下一行。
F7 Step into 跳入到调用的方法内部代码。
Shift + F7 Smart step into 会打开一个面板,让你选择具体要跳入的类方法,这个在复杂的嵌套代码中特别有用。
Shift + F8 Step out 跳出当前的类,到上一级。
Alt + F9 Run to cursor 让代码运行到当前光标所在处。
Alt + F8 Evaluate expression 打开一个表达式面板,然后进行进一步的计算。
F9 Resume program 结束当前断点的本轮调试(因为有可能代码会被调用多次,所以调用后只会结束当前的这一次);如果有下一个断点会跳到下一个断点中。
Ctrl + F8 Toggle breakpoint 在当前光标处,添加或者删除断点。
Ctrl + Shift + F8 View breakpoints 打开当前断点的面板,可以进行条件过滤哦。
相关推荐
plainGeekDev3 分钟前
Gradle 写法 → Kotlin DSL
android·java·kotlin
RainCityLucky16 分钟前
Java Swing 自定义组件库分享(十三)
java·笔记·后端
无限的鲜花9 小时前
反射(原创推荐)
java·开发语言
IT二叔9 小时前
Java项目部署-03-teamcity-cicd-docker镜像流水线方式部署
java·ci/cd·持续部署
一路向北he9 小时前
字节钢铁军团--“提供情境,而非控制”
java·开发语言·前端
超级数据查看器10 小时前
超级数据查看器 v10.0 发布
java·大数据·数据库·sqlite·安卓
折哥的程序人生 · 物流技术专研11 小时前
《Java 100 天进阶之路》第50篇:阻塞队列与并发容器(2026版)
java·面试题·java进阶·blockingqueue·并发容器·集合源码·java100天进阶
ai_coder_ai11 小时前
编写自动化脚本,在自己后端服务中使用Open Api进行设备相关操作
java·运维·自动化
硕风和炜12 小时前
【LeetCode: 2492. 两个城市间路径的最小分数 + DFS】
java·算法·leetcode·深度优先·dfs·bfs·并查集
格子软件12 小时前
2026年GEO贴牌代理:分布式多级分账状态机源码深度解构
java·vue.js·分布式·vue·geo