Java for 循环
在计算机编程中,循环用于重复代码块。在本教程中,我们将通过示例学习如何在 Java 中使用 for 循环,我们还将了解在计算机编程中循环的工作原理。
在本教程中,我们将通过示例学习如何在 Java 中使用 for 循环,我们还将了解在计算机编程中循环的工作原理。
在计算机编程中,循环用于重复执行代码块。例如,如果您想将一条消息显示 100 次,那么您可以使用循环而不是输入 100 次相同的代码。
在 Java 中,存在三种类型的循环。
- for 循环
- while 循环
- do…while 循环
本教程重点介绍 for 循环。您将在接下来的教程中了解其他类型的循环。
Java for 循环
Java for
循环用于运行一段代码一定次数。 for
循环的语法是:
for (initialExpression; testExpression; updateExpression) {
// body of the loop
}
说明:
initialExpression
初始化声明的变量,只执行一次。testExpression
为测试条件,如果结果为true
,则执行for
循环体。updateExpression
用于每次执行循环后更新initialExpression
中变量的值 。
要了解循环的测试条件,需要首先了解关系运算符和逻辑运算符的知识。
Java for 循环流程图
示例 1:将文本显示五次
public class Main {
public static void main(String[] args) {
int n = 5;
// for loop
for (int i = 1; i <= n; ++i) {
System.out.println("Java 很有趣");
}
}
}
输出:
Java 很有趣
Java 很有趣
Java 很有趣
Java 很有趣
Java 很有趣
这是该程序的工作原理。
迭代 | 变量的值 | 条件:i <= n |
执行 |
---|---|---|---|
1 | i = 1 n = 5 |
true |
打印 “Java 很有趣”; i 增加到 2。 |
2 | i = 2 n = 5 |
true |
打印 “Java 很有趣”; i 增加到 3。 |
3 | i = 3 n = 5 |
true |
打印 “Java 很有趣”; i 增加到 4。 |
4 | i = 4 n = 5 |
true |
打印 “Java 很有趣”; i 增加到 5。 |
5 | i = 5 n = 5 |
true |
打印 “Java 很有趣”; i 增加到 6。 |
6 | i = 6 n = 5 |
false |
循环终止。 |
示例 2:显示 1 到 5 之间的数字
// 打印 1 到 5
public class Main {
public static void main(String[] args) {
int n = 5;
// for loop
for (int i = 1; i <= n; ++i) {
System.out.println(i);
}
}
}
输出:
1
2
3
4
5
这是该程序的工作原理。
迭代 | 变量的值 | 条件:i <= n |
执行 |
---|---|---|---|
1 | i = 1 n = 5 |
true |
打印 1; i 增加到 2。 |
2 | i = 2 n = 5 |
true |
打印 2; i 增加到 3。 |
3 | i = 3 n = 5 |
true |
打印 3; i 增加到 4。 |
4 | i = 4 n = 5 |
true |
打印 4; i 增加到 5。 |
5 | i = 5 n = 5 |
true |
打印 5; i 增加到 6。 |
6 | i = 6 n = 5 |
false |
循环终止。 |
示例 3:显示 n 个自然数的总和
// 计算 1 到 1000 的和
public class Main {
public static void main(String[] args) {
int sum = 0;
int n = 1000;
// for loop
for (int i = 1; i <= n; ++i) {
// 循环累加到 sum 变量上
sum += i; // sum = sum + i
}
System.out.println("1 + 2 + ... + 1000 = " + sum);
}
}
输出:
1 + 2 + ... + 1000 = 500500
这里定义了一个变量 sum
代表总和,其初始为 0
。然后,for 循环中 i
从 1
到 1000
循环迭代 。在每次迭代中,将 i
的值累加到 sum
上。
直到 i
变为 1001
,测试条件为 false
退出循环。
上面的自然数相加程序也可以写成从 1000 递减到 1 相加:
// 计算 1 到 1000 的和
public class Main {
public static void main(String[] args) {
int sum = 0;
int n = 1000;
// for loop
for (int i = n; i >= 1; --i) {
// 循环累加到 sum 变量上
sum += i; // sum = sum + i
}
System.out.println("Sum = " + sum);
}
}
该程序的输出与示例 3 相同。
Java for-each 循环
Java for-each 循环是一种语法糖,可以更轻松地遍历数组和集合。例如,
// 打印数字元素
public class Main {
public static void main(String[] args) {
// 创建数组
int[] numbers = {3, 7, 5, -5};
// 迭代数组
for (int number: numbers) {
System.out.println(number);
}
}
}
输出:
3
7
5
-5
在这里,我们使用了 for-each 循环来逐个打印 numbers
数组中的元素。
要了解更多信息,请访问Java for-each 循环。
Java 无限循环
如果测试表达式的计算结果永远为 false
,那么 for
循环将永远运行,这称为无限循环。例如,
// 无限循环
public class Infinite {
public static void main(String[] args) {
int sum = 0;
for (int i = 1; i <= 10; --i) {
System.out.println("Hello");
}
}
}
这里,测试表达式 i <= 10
永远不会为 false
,程序将一致打印 Hello
,直到程序被意外终止。