Java for 循环
在 Java 中,for
循环是 Java 语言中最核心的循环结构之一,常用于在特定的次数范围内或遍历集合时,重复执行某段代码逻辑。
设想一下,如果我们需要在屏幕上打印一个句子 50 次,我们或许可以不用循环,而是将打印语句重复写 50 遍。但如果需要打印一百万次呢?这时,循环就避免不了了。借助循环,我们只需编写一次打印语句,就可以让计算机重复执行任意次数。
这只是一个简单的例子,却足以体现循环在计算机编程中的重要性。
基本语法
✅ 在 Java 中,for 循环的基本语法:
for (initialization; testExpression; updateExpression) {
// 循环体内的代码
}
for 循环的工作原理:
- 初始化表达式(initialization)仅执行一次。
- 随后,程序会评估测试表达式(testExpression),该表达式是一个布尔条件。
- 若测试表达式(testExpression)的结果为
true
,则执行循环体内的代码。 - 执行完毕后,会执行更新表达式(updateExpression)。
- 之后再次对测试表达式进行判断:若结果为
true
,则重复执行循环体及更新表达式。 - 如果测试表达式为 true,则执行
for
循环体内的代码,并继续执行更新表达式(updateExpression)。 - 该过程持续进行,直至测试表达式的评估结果为
false
时终止循环。 - 一旦测试表达式为
false
,循环立即结束。
for 循环实例
1. 实现句子重复打印六次
下面是一个使用for
循环将句子重复打印六次的简单示例:
/**
* 循环打印示例
* 展示for循环的基本用法
*/
public class ForLoopPrinter {
public static void main(String[] args) {
// 使用for循环输出1到6的行号
for (int i = 1; i <= 6; i++) {
System.out.println("第 " + i + " 行");
}
}
}
输出结果:
第 1 行
第 2 行
第 3 行
第 4 行
第 5 行
第 6 行
在上面的示例中,我们可以看到循环结构的三个关键组成部分被清晰的定义:
- 初始化表达式
int i = 1
用于设置循环起始条件。 - 测试表达式
i <= 10
负责在每次迭代前检查循环是否继续执行。 - 更新表达式
++i
则在每次迭代结束后对循环变量进行递增操作。
要深入了解测试表达式及其评估方式,请查阅涉及关系运算符与逻辑运算符的 Java 运算符。
2. 计算从 1 到 1000 所有整数的累加和
下面是一个使用for
循环统计从 1 到 1000 的所有整数之和的简单示例:
/**
* 数字求和计算器
* 计算从1到1000所有整数的累加和
*/
public class NumberSumCalculator {
public static void main(String[] args) {
int sum = 0; // 初始化累加和
// 循环计算1到1000的累加和
for (int i = 1; i <= 1000; i++) {
sum += i; // 累加每个数字
}
// 输出计算结果
System.out.println("从 1 到 1000 的累加和 = " + sum);
}
}
输出结果:
从 1 到 1000 的累加和 = 500500
在这里,我们定义了一个名为sum
的变量,并将其初始值设为 0。
在随后的for
循环中,我们初始化了一个名为i
的变量,其初始值为 1。
在for
循环的每次迭代中,sum
变量被赋值为 sum + i
,随后i
的值增加 1,该循环持续进行直到i
的值大于 1000 为止。
1 重复: i = 1 同时 sum = 0+1 = 1
2 重复: i = 2 同时 sum = 1+2 = 3
3 重复: i = 3 同时 sum = 3+3 = 6
4 重复: i = 4 同时 sum = 6+4 = 10
... .. ...
999 重复: i = 999 同时 sum = 498501 + 999 = 499500
1000 重复: i = 1000 同时 sum = 499500 + 1000 = 500500
无限循环
在使用循环结构时,需格外注意测试表达式的设置。如果错误地将测试表达式设置为始终为真(true),for 循环将无法终止,导致无限循环。就比如下面的例子:
/**
* 无限循环演示类
* 该程序展示了由于迭代条件错误导致的无限循环情况
*/
public class InfiniteLoopDemo {
public static void main(String[] args) {
int total = 0; // 用于存储累加结果的变量
for (int count = 1; count <= 10; --count) {
System.out.println("Hello"); // 这行代码会无限次执行
}
}
}
在这里,测试表达式(i <= 10)永远不会出现 false,并且 hello 会无数次打印(至少在理论上是这样)。
Java for-each 循环(遍历循环)
在 Java 中,针对数组和集合的遍历提供了一种简化的循环语法,通常称为 “增强 for 循环” 或 “for-each 循环”。例如,
for (int a : array) {
System.out.println(a);
}
要了解更多信息,请进一步访问:Java for-each 循环
反馈提交成功
感谢您的反馈,我们将尽快处理您的反馈