【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 打开当前断点的面板,可以进行条件过滤哦。
相关推荐
_Evan_Yao4 小时前
Redis 缓存穿透、击穿、雪崩,一次讲清!
java·spring·mybatis
梓豪csd4 小时前
消息订阅中心:谁该收到哪条通知
java·开发语言·人工智能·低代码·自动化·1024程序员节
秋饼4 小时前
Spring AI 2.1 Message Parts 深度实战:推理签名回放与跨轮记忆持久化的源码级落地
java·ai·技术分享·后端开发
thefool1122665 小时前
TCP 1
java·1024程序员节
金銀銅鐵8 小时前
[Java] 用 GUI 展示 EnumSet 增减元素时的内部变化(下)
java·后端·ai编程
AI人工智能+电脑小能手8 小时前
一次请求打几个下游,这个Java并行任务工具类6个方法按序聚合
java·线程池·并发编程·1024程序员节·批量处理·并行任务
paopaokaka_luck9 小时前
心理咨询管理系统(WebSocket实时沟通、基于用户的协同过滤、 ECharts多维分析、 预约业务流程、预约校验与定时处理)
java·vue.js·spring boot·mysql·spring·echarts·1024程序员节
2301_322414280410 小时前
springboot农产品交易平台的设计与实现08055-计算机毕设 原创(免费领源码+部署教程+开发环境)
java·spring boot·redis·mysql·tomcat·maven·mybatis
考虑考虑11 小时前
JDK26的JEP 500属性
java·后端·java ee
LMT流氓兔11 小时前
第五单元——第十二课:把脚本整理成项目
java·数据库·python·langchain·1024程序员节