for循环执行顺序为初始化→条件判断→执行循环体→更新表达式→重复判断,三部分用分号分隔:初始化仅执行一次,条件判断决定是否继续,更新表达式在每次循环体后运行。

Java中的for循环按固定顺序执行:先初始化、再判断条件、满足则执行循环体、最后更新变量,接着重复判断和执行,直到条件不成立为止。
for循环的三个核心部分
标准for循环语法为 for (初始化; 条件判断; 更新表达式) { 循环体 },三部分用分号分隔,各自作用明确:
- 初始化:只在循环开始前执行一次,常用于声明并赋值循环变量(如 int i = 0);可为空,但分号不能省略
- 条件判断:每次进入循环体前都要检查,结果必须是boolean类型;若为true则执行循环体,false则立即退出循环
- 更新表达式:每次执行完循环体后运行,通常用于修改循环变量(如 i++ 或 i--);也允许为空或含多个语句(用逗号分隔)
执行流程图解(以 for (int i = 0; i
该循环共执行3次,具体步骤如下:
- 第1步:执行 int i = 0(初始化)
- 第2步:判断 i → true → 进入循环体
- 第3步:执行循环体内的代码
- 第4步:执行 i++(更新),此时 i 变为1
- 重复第2–4步:i=1时条件仍为true;i=2时仍为true;i=3时条件为false,循环终止
常见易错点与注意事项
理解执行顺序有助于避免典型错误:
Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。它虽然不是Linux系统核心的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式协调各个程序的运行。因此,对于用户来说,shell是最重要的实用程序,深入了解和熟练掌握shell的特性极其使用方法,是用好Linux系统
立即学习“Java免费学习笔记(深入)”;
- 更新表达式在循环体之后执行,因此循环体内最后一次看到的是“本轮初始值”,不是更新后的值
- 条件判断发生在每次循环体执行前,所以即使循环体内修改了变量,也要等下一轮才影响判断
- 初始化部分定义的变量作用域仅限于for循环内,循环外不可访问(如 for (int i = 0; ...) 中的 i 在循环结束后已失效)
- 可以省略任意一部分(留空),例如 for (; condition; ) 相当于 while(condition),但两个分号必须保留
增强for循环(for-each)的执行逻辑
用于遍历数组或Iterable对象,语法为 for (类型 元素 : 容器) { ... }:
- 底层调用容器的迭代器(iterator()),逐个获取元素,无需手动管理索引或判断边界
- 每次迭代自动将下一个元素赋值给指定变量,然后执行循环体
- 不能在遍历时直接修改集合结构(如add/remove),否则抛出ConcurrentModificationException
- 不适用于需要索引、修改原数组元素或跳过某些项的场景









