跳转至

控制流程与数组:循环语句

在Java编程中,循环语句是控制流程的重要组成部分。它们允许我们重复执行一段代码,直到满足特定条件为止。Java提供了三种主要的循环语句:forwhiledo-while。在本章节中,我们将详细探讨这些循环语句的使用方法,并通过代码示例和练习帮助你掌握它们。

1. for 循环

for 循环是最常用的循环结构之一,特别适用于已知循环次数的情况。它的语法如下:

for (初始化; 条件; 更新) {
    // 循环体
}
  • 初始化:在循环开始前执行一次,通常用于初始化循环变量。
  • 条件:每次循环开始前都会检查这个条件。如果条件为 true,则执行循环体;否则,退出循环。
  • 更新:每次循环结束后执行,通常用于更新循环变量。

示例 1:打印数字 1 到 10

public class ForLoopExample {
    public static void main(String[] args) {
        // 使用 for 循环打印数字 1 到 10
        for (int i = 1; i <= 10; i++) {
            System.out.println(i);
        }
    }
}

解释: - int i = 1;:初始化循环变量 i 为 1。 - i <= 10;:循环条件,只要 i 小于或等于 10,循环就会继续。 - i++:每次循环结束后,i 的值增加 1。 - System.out.println(i);:在每次循环中打印 i 的值。

示例 2:计算 1 到 100 的和

public class SumExample {
    public static void main(String[] args) {
        int sum = 0;
        // 使用 for 循环计算 1 到 100 的和
        for (int i = 1; i <= 100; i++) {
            sum += i;
        }
        System.out.println("1 到 100 的和是: " + sum);
    }
}

解释: - int sum = 0;:初始化变量 sum 为 0,用于存储累加的结果。 - sum += i;:在每次循环中,将 i 的值加到 sum 上。 - System.out.println("1 到 100 的和是: " + sum);:循环结束后,打印累加的结果。

2. while 循环

while 循环在条件为 true 时重复执行循环体。它的语法如下:

while (条件) {
    // 循环体
}
  • 条件:每次循环开始前都会检查这个条件。如果条件为 true,则执行循环体;否则,退出循环。

示例 3:使用 while 循环打印数字 1 到 10

public class WhileLoopExample {
    public static void main(String[] args) {
        int i = 1;
        // 使用 while 循环打印数字 1 到 10
        while (i <= 10) {
            System.out.println(i);
            i++;
        }
    }
}

解释: - int i = 1;:初始化循环变量 i 为 1。 - while (i <= 10):只要 i 小于或等于 10,循环就会继续。 - i++:每次循环结束后,i 的值增加 1。 - System.out.println(i);:在每次循环中打印 i 的值。

3. do-while 循环

do-while 循环与 while 循环类似,但它至少会执行一次循环体,然后再检查条件。它的语法如下:

do {
    // 循环体
} while (条件);
  • 条件:每次循环结束后检查这个条件。如果条件为 true,则继续循环;否则,退出循环。

示例 4:使用 do-while 循环打印数字 1 到 10

public class DoWhileLoopExample {
    public static void main(String[] args) {
        int i = 1;
        // 使用 do-while 循环打印数字 1 到 10
        do {
            System.out.println(i);
            i++;
        } while (i <= 10);
    }
}

解释: - int i = 1;:初始化循环变量 i 为 1。 - do { ... } while (i <= 10);:先执行循环体,然后检查条件。只要 i 小于或等于 10,循环就会继续。 - i++:每次循环结束后,i 的值增加 1。 - System.out.println(i);:在每次循环中打印 i 的值。

4. 练习题

练习 1:打印乘法表

编写一个程序,使用 for 循环打印 1 到 9 的乘法表。

提示:可以使用嵌套的 for 循环来实现。

练习 2:计算阶乘

编写一个程序,使用 while 循环计算并打印 5 的阶乘(即 5! = 5 * 4 * 3 * 2 * 1)。

练习 3:猜数字游戏

编写一个程序,使用 do-while 循环实现一个简单的猜数字游戏。程序随机生成一个 1 到 100 之间的数字,用户输入猜测的数字,程序提示用户猜测的数字是太大还是太小,直到用户猜中为止。

提示:可以使用 Math.random() 方法生成随机数。

5. 总结

在本章节中,我们学习了 Java 中的三种循环语句:forwhiledo-while。每种循环都有其特定的使用场景:

  • for 循环:适用于已知循环次数的情况。
  • while 循环:适用于不确定循环次数,但需要在循环开始前检查条件的情况。
  • do-while 循环:适用于至少需要执行一次循环体的情况。

通过代码示例和练习,你应该已经掌握了这些循环语句的基本用法。在实际编程中,选择合适的循环结构可以使代码更加简洁和高效。继续练习这些循环语句,并尝试将它们应用到更复杂的程序中,以加深你的理解。