Java for 循环
Java 循环
在本教程中,我们将通过示例学习如何在 Java 中使用 for 循环,还将了解循环在计算机编程中的工作原理。
在计算机编程中,循环用于重复一段代码。例如,如果您想显示一条消息 100 次,那么您可以使用循环而不是输入相同的代码 100 次。
在Java中,循环分为三种。
- for 循环
- while 循环
- 做...while循环
本教程重点介绍 for 循环。您将在接下来的教程中了解其他类型的循环。
Java for 循环
Java for
循环用于运行一段代码一定次数。 for
的语法 循环是:
for (initialExpression; testExpression; updateExpression) {
// body of the loop
}
在这里,
- 初始表达式 初始化和/或声明变量并且只执行一次。
- 条件 被评估。如果 条件 是
true
,for
的主体 循环被执行。 - updateExpression 更新 initialExpression 的值 .
- 条件 再次评估。该过程一直持续到条件 是
false
.
要了解有关条件的更多信息,请访问 Java 关系和逻辑运算符。
<图id="流程图">
示例1:文本显示五次
// Program to print a text 5 times
class Main {
public static void main(String[] args) {
int n = 5;
// for loop
for (int i = 1; i <= n; ++i) {
System.out.println("Java is fun");
}
}
}
输出
Java is fun Java is fun Java is fun Java is fun Java is fun
下面是这个程序的工作原理。
迭代 | 变量 | 条件:i <=n | 动作 |
---|---|---|---|
第一个 | i = 1 n = 5 | true |
Java 很有趣
被打印。 我 增加到 2 . |
第二次 | i = 2 n = 5 | true |
Java 很有趣
被打印。 我 增加到 3 . |
第三次 | i = 3 n = 5 | true |
Java 很有趣
被打印。 我 增加到 4 . |
第四次 | i = 4 n = 5 | true |
Java 很有趣
被打印。 我 增加到 5 . |
第 5 次 | i = 5 n = 5 | true |
Java 很有趣
被打印。 我 增加到 6 . |
第 6 次 | i = 6 n = 5 | false | 循环终止。 |
示例 2:显示从 1 到 5 的数字
// Program to print numbers from 1 to 5
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 | 动作 |
---|---|---|---|
第一个 | i = 1 n = 5 | true |
1
被打印。 我 增加到 2 . |
第二次 | i = 2 n = 5 | true |
2
被打印。 我 增加到 3 . |
第三次 | i = 3 n = 5 | true |
3
被打印。 我 增加到 4 . |
第四次 | i = 4 n = 5 | true |
4
被打印。 我 增加到 5 . |
第 5 次 | i = 5 n = 5 | true |
5
被打印。 我 增加到 6 . |
第 6 次 | i = 6 n = 5 | false | 循环终止。 |
示例 3:显示 n 个自然数之和
// Program to find the sum of natural numbers from 1 to 1000.
class Main {
public static void main(String[] args) {
int sum = 0;
int n = 1000;
// for loop
for (int i = 1; i <= n; ++i) {
// body inside for loop
sum += i; // sum = sum + i
}
System.out.println("Sum = " + sum);
}
}
输出 :
Sum = 500500
这里,sum 的值 是 0 最初。然后,for循环从i = 1 to 1000
开始迭代 .在每次迭代中,i 添加到 sum 其值增加1 .
当 i 变成 1001 ,测试条件为false
和 sum 将等于 0 + 1 + 2 + .... + 1000
.
上面的自然数相加的程序也可以写成
// Program to find the sum of natural numbers from 1 to 1000.
class Main {
public static void main(String[] args) {
int sum = 0;
int n = 1000;
// for loop
for (int i = n; i >= 1; --i) {
// body inside for loop
sum += i; // sum = sum + i
}
System.out.println("Sum = " + sum);
}
}
此程序的输出与示例 3 相同 .
Java for-each 循环
Java for 循环有另一种语法,可以很容易地遍历数组和集合。例如,
// print array elements
class Main {
public static void main(String[] args) {
// create an array
int[] numbers = {3, 7, 5, -5};
// iterating through the array
for (int number: numbers) {
System.out.println(number);
}
}
}
输出
3 7 5 -5
在这里,我们使用了 for-each 循环 打印 numbers 的每个元素 一一排列。
在循环的第一次迭代中,number 将是 3,number 在第二次迭代中将是 7,依此类推。
要了解更多信息,请访问 Java for-each 循环。
Java 无限循环
如果我们设置 测试表达式 以这样一种方式,它永远不会评估为 false
, for
循环将永远运行。这称为无限循环。例如,
// Infinite for Loop
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
反复打印,直到内存用完。
java