Skip to content

2. for 循环

知识点:基本语法

java
for (初始化; 条件; 更新) {
    // 要执行的代码
}

特点:

  1. 先初始化。
  2. 检查条件,如果为 true,则执行循环体;否则退出。
  3. 执行完循环体后更新。

示例:打印 1 到 5 的数字

java
public class ForLoopExample {
    public static void main(String[] args) {
        for (int i = 1; i <= 5; i++) { // 初始化、条件、更新
            System.out.println("i的值是:" + i);
        }
    }
}

输出:

i的值是:1
i的值是:2
i的值是:3
i的值是:4
i的值是:5

3. while 循环

知识点:基本语法

java
while (条件) {
    // 要执行的代码
}

特点:

  1. 先检查条件,如果为 true 则执行循环体;否则不执行。
  2. 执行完循环体后再次检查条件。

示例:计算 1 到 5 的和

java
public class WhileLoopExample {
    public static void main(String[] args) {
        int sum = 0;
        int i = 1;
        while (i <= 5) { // 条件为 true 就继续循环
            sum += i; // 累加
            i++; // 更新条件
        }
        System.out.println("总和是:" + sum); // 输出:15
    }
}

4. do...while 循环

知识点:基本语法

java
do {
    // 要执行的代码
} while (条件);

特点:

  1. 先执行循环体,再检查条件。
  2. 如果条件为 true,则继续循环;否则退出。

示例:确保至少输出一次

java
public class DoWhileLoopExample {
    public static void main(String[] args) {
        int i = 5;
        do { // 先执行一次循环体
            System.out.println("i的值是:" + i);
            i--; 
        } while (i >= 1); // 条件为 false 后退出
        
        System.out.println("循环结束");
    }
}

输出:

i的值是:5
i的值是:4
i的值是:3
i的值是:2
i的值是:1
循环结束

5. 循环控制语句

知识点:break 和 continue 语句

  • break 可以提前退出循环。
  • continue 跳过当前迭代,继续下一次循环。

示例:使用 break 结束循环

java
public class BreakExample {
    public static void main(String[] args) {
        for (int i = 1; i <= 5; i++) {
            if (i == 3) { // 当 i 等于 3 时,退出循环
                break;
            }
            System.out.println("当前值:" + i);
        }
    }
}

输出:

当前值:1
当前值:2

示例:使用 continue 跳过某些迭代

java
public class ContinueExample {
    public static void main(String[] args) {
        for (int i = 1; i <= 5; i++) {
            if (i == 3 || i == 4) { // 当 i 等于 3 或 4,跳过当前循环
                continue;
            }
            System.out.println("当前值:" + i);
        }
    }
}

输出:

当前值:1
当前值:2
当前值:5

6. 循环的嵌套

知识点:在循环中使用另一个循环

java
for (外层变量) {
    while (条件) { // 嵌套了一个 while 循环
        // 代码
    }
}

特点:

  1. 外层循环控制整个结构。
  2. 内部循环根据需要执行。

示例:打印乘法表

java
public class NestedLoopExample {
    public static void main(String[] args) {
        for (int i = 1; i <= 5; i++) { // 外层循环控制行数
            System.out.println("第 " + i + " 行:");
            for (int j = 1; j <= 4; j++) { // 内部循环打印列数
                System.out.print(i * j + "\t"); // 打印乘积并换行
            }
            System.out.println(); // 换行到下一行
        }
    }
}

输出:

第 1 行:
1	2	3	4	
第 2 行:
2	4	6	8	
...
(实际输出为完整的乘法表)

7. 循环的优化

知识点:避免不必要的循环

  • 在编写循环时,尽量减少嵌套层级。
  • 使用更高效的条件判断。

示例:使用 for 替代 while 或 do...while

java
public class LoopOptimization {
    public static void main(String[] args) {
        int sum = 0;
        // 使用 for 循环替代 while,代码简洁且高效
        for (int i = 1; i <= 5; i++) {
            sum += i;
        }
        System.out.println("总和是:" + sum); // 输出:15
    }
}

8. 总结

  • for 循环适合已知循环次数的情况。
  • whiledo...while 适用于未知循环次数的情况,但需要手动管理条件。
  • 使用 break 可以提前退出循环;使用 continue 跳过当前迭代。

练习题

  1. 编写一个程序,打印从 1 到 10 的数字(使用 for 循环)。
  2. 计算从 1 到 n 的和(n 可以通过用户输入获得)。
  3. 使用 while 或 do...while 循环实现九九乘法表。