当前位置: 首页 > news >正文

Java for 循环

Java for 循环专业详解

一、定义与定位

for是Java最常用的计数型循环,适用于循环次数明确、需要自增/自减控制变量的场景,结构紧凑,将循环初始化、循环条件、迭代更新三部分统一写在头部,可读性优于while

二、标准for循环完整语法

for(初始化表达式;循环条件;更新表达式){循环体;}

执行流程(固定顺序):

  1. 仅执行1次初始化表达式,定义循环控制变量;
  2. 判断循环条件,结果为true进入循环体;为false直接终止循环;
  3. 执行完循环体全部代码;
  4. 执行更新表达式(变量自增/自减);
  5. 回到第2步重复判断。

示例:输出1~10

for(inti=1;i<=10;i++){System.out.println(i);}

三部分表达式灵活特性

  1. 初始化、更新可写多语句,用逗号分隔
for(inta=0,b=10;a<10;a++,b--){}
  1. 三部分均可省略,分号;不能丢,省略条件代表永久true(死循环)
// 死循环for(;;){}

三、增强for循环(for-each,遍历数组/集合专用)

语法

for(元素类型 临时变量:数组/集合){操作临时变量}

特点:无需下标,自动遍历全部元素,无法获取索引、不能直接修改原数组元素

int[]arr={1,2,3,4};for(intnum:arr){System.out.println(num);}

四、嵌套for循环

循环内部嵌套for,多用于二维数组、矩阵、图形打印;可配合标签break/continue跳出多层循环。

// 九九乘法表示例for(inti=1;i<=9;i++){for(intj=1;j<=i;j++){System.out.print(j+"*"+i+"="+i*j+"\t");}System.out.println();}

带标签跳出多层循环:

outer:for(inti=1;i<=5;i++){for(intj=1;j<=5;j++){if(j==3)breakouter;}}

五、循环控制关键字

  1. break:直接终止当前整个for循环;
  2. continue:结束本次迭代,执行更新表达式后进入下一轮条件判断。

六、for、while、do-while适用场景区分

  1. 标准for:已知循环次数、需要计数器;
  2. while:循环次数未知,仅靠条件判断;
  3. do-while:必须先执行一次循环体再判断;
  4. for-each:单纯遍历数组、集合,不需要下标。

七、专业注意事项

  1. 初始化定义的变量作用域仅限当前for循环,循环外无法访问;
  2. 循环条件避免浮点数判断,浮点精度误差易造成死循环;
  3. 循环内尽量不频繁创建对象,减少GC开销;
  4. for-each仅做遍历读取,修改临时变量不会同步到原数组;
  5. 循环条件不要写死不变量,否则引发死循环。
http://www.jsqmd.com/news/1096203/

相关文章:

  • 远程办公文件跨设备流转实践:企业网盘选型必须考量的 3 个底层架构
  • 微博图片批量下载终极指南:15分钟快速掌握高效自动化方案
  • 3分钟搞定GitHub加速!国内开发者必备的免费浏览器插件解决方案
  • 君保融打造 AIGC 实战人才摇篮:泾河新城数字人才基地正式启航!
  • 面包板到PCB:快速原型验证的最佳实践 —— 模块化设计与可测试性
  • 第 4 讲:当前 Agent 技术趋势:Tool、Skill、MCP、A2A
  • 科技赋能居家卫浴升级 科勒智能马桶盖打造健康舒适如厕新体验
  • 3分钟快速安装Windows包管理器:PowerShell一键安装Winget完整教程
  • 深入解析ASD433A评估板:PowerPC MPC5643L硬件设计与调试实战
  • WindowsCleaner:3分钟解决C盘爆红问题的开源系统清理工具
  • LLM 提示词注入防护:从裸奔到四层纵深防御
  • 微信聊天记录备份终极指南:如何安全保存珍贵对话数据
  • DCT域图像隐写实战:从MATLAB代码到鲁棒性调优
  • 常用电子元器件识别与参数速查:电阻、电容、电感 —— 封装、精度与温度系数
  • 零拷贝网络:Linux splice/sendfile 系统调用的 Go 实现
  • MATLAB回调函数实战:从函数句柄到ButtonDownFcn的交互设计
  • 【Unity3D】Unity 编辑器核心窗口功能详解与高效布局指南
  • Windows Cleaner:专治C盘爆红与系统卡顿的终极解决方案
  • 告别繁琐配置:PowerShell智能脚本帮你快速部署Windows包管理器
  • MPC5643L/SPC56EL评估板硬件设计解析:电源、时钟与启动配置实战
  • 从仿真到实战:基于Multisim的数字钟设计与调试全流程解析
  • 【西安工商学院本科毕业论文】基于Web的演出售票可视化系统设计与实现
  • 2026年AI图片翻译深度实测:电商图、海报、漫画如何做到“无痕“本地化?5款工具对比
  • NXP I.MX6ULL DDR3实战:从配置脚本到压力测试的完整流程解析
  • 大庆装饰公司怎么选不踩坑!本土靠谱装饰公司、全屋定制、别墅商装优选攻略
  • Viterbi算法:从最短路径到序列解码的实战指南
  • ExifToolGUI图片元数据管理工具:免费开源的照片信息批量编辑完整指南
  • Playwright与MSW集成:构建稳定高效的前端E2E测试环境
  • 2026年云计算运维培训机构深度点评:实战能力与就业保障真实横向测评
  • tinyriscv学习记录之五