理解 Java for 循环的基本语法与执行流程
掌握 for 循环在实际编程中的常见应用场景
学会使用嵌套 for 循环处理多维结构
识别并避免无限循环的陷阱
了解 for 循环相较于其他循环的优势
Java 中的 for 循环是一种控制流语句,它允许根据给定条件重复执行一段代码。for 循环特别适用于以下场景:
遍历一个已知范围的数值(如 1 到 100)
多次执行相同操作(如打印 “Hello World” 5 次)
遍历数组或集合中的元素
// Java 程序演示 for 循环
class Main {
public static void main(String args[]) {
// 打印数字 1 到 5
for (int i = 1; i <= 5; i++) {
System.out.println("" + i);
}
System.out.println("Loop has ended.");
}
}1
2
3
4
5
Loop has ended.程序开始执行
for 循环初始化 i = 1
检查条件 i <= 5:
若为 true → 执行循环体(打印 i),然后执行 i++
若为 false → 跳出循环,继续执行后续语句
重复步骤 3,直到 i = 6 时条件失败,循环结束
for (初始化表达式; 条件表达式; 更新表达式) {
// 循环体:要重复执行的语句
}三个核心组成部分
for 循环流程图
开始
执行 初始化表达式(仅一次)
判断 条件表达式:
若为 真 → 执行循环体 → 执行更新表达式 → 返回步骤 3
若为 假 → 跳出循环 → 执行后续代码

class Main {
public static void main(String[] args) {
for (int i = 1; i <= 10; i++) {
System.out.println(i);
}
}
}输出: 1 到 10 的数字,每行一个。
class Main {
public static void main(String args[]) {
for (int i = 1; i <= 5; i++)
System.out.println("Hello World");
}
}💡 注意:即使只有一条语句,也建议使用大括号
{}提高可读性和避免错误。
class Main {
public static void main(String args[]) {
int sum = 0;
for (int x = 1; x <= 20; x++) {
sum = sum + x; // 或简写为 sum += x;
}
System.out.println("Sum: " + sum);
}
}输出: Sum: 210(因为 1+2+...+20 = 20×21/2 = 210)
当一个 for 循环内部包含另一个 for 循环时,称为嵌套循环。常用于处理二维结构,如矩阵、表格等。
class Main {
public static void main(String[] args) {
for (int i = 1; i <= 3; i++) {
for (int j = 1; j <= 3; j++) {
System.out.print("(" + i + "," + j + ") ");
}
System.out.println(); // 换行
}
}
}输出:
(1,1) (1,2) (1,3)
(2,1) (2,2) (2,3)
(3,1) (3,2) (3,3) ✅ 应用场景:打印九九乘法表、遍历二维数组、生成棋盘等。
当循环条件永远为真时,就会形成无限循环,程序将一直运行下去(除非手动终止)。
class Main {
public static void main(String args[]) {
for (int i = 1; i >= 1; i++) {
System.out.println("Infinite Loop " + i);
}
}
}因为
i从 1 开始且不断递增,i >= 1始终成立。
经典写法
public class Main {
public static void main(String[] args) {
for (;;) {
System.out.println("Infinite Loop");
}
}
}
for (;;)是创建无限循环的惯用写法,等价于while (true)。
结构清晰:初始化、条件、更新三部分一目了然
控制精准:适合已知迭代次数的场景
高效简洁:比 while 循环更紧凑,减少变量污染
广泛适用:完美支持数组、列表、字符串等遍历操作
如何使用 for 循环倒序打印数字 10 到 1?请写出代码。
如果在嵌套循环中使用相同的循环变量名(如内外层都用 i),会发生什么?是否推荐这样做?
为什么 for (;;) 被认为是创建无限循环的标准写法?它和 while (true) 有何异同?