Java 的 while 循环用于根据指定条件迭代执行一段代码块,直到条件变为 False。同时,while 循环首先会验证条件。如果条件为真,则执行其中的代码。如果条件为假,则 while 循环至少不会执行一次。
因此,我们可以说 Java 编程语言中的 while 循环可以编译零次或多次,其语法如下:
While( JCondition ) {
Jstatement 1;
Jstatement 2;
………….
Jstatement N;
}
// This statement is from outside of it
首先,Javac 测试 While 循环的条件。如果条件结果为 True,则执行其中的语句 Jstatement 1 到 Jstatement N。如果为 False,Javac 将跳出花括号,完成外部声明。在这种编程语言中,单行 while 循环代码不需要花括号。但是,如果多条语句忽略花括号,Javac 将只执行第一行。建议始终使用花括号。
Java While 循环的流程图
下图展示了 While 循环的流程图。

在开始时,此编程语言中的 While 循环会测试条件。
- 如果测试结果为 True,则执行其中的代码。
- 接下来,我们需要在此中使用递增和递减运算符来提高或降低值。
- 值递增后,Javac 将再次测试条件。只要测试结果为 True,Javac 就会重复此过程。
- 如果测试结果为 False,Javac 将终止它。
让我们看一个 While 循环的例子,以获得更好的理解。
Java While 循环示例
这个编程中的 while 循环允许用户输入一个小于 10 的整数值。接下来,Javac 编译器将计算到 10 的所有数字的总和。
import java.util.Scanner;
public class Sample {
private static Scanner sc;
public static void main(String[] args) {
int number, sum = 0;
sc = new Scanner(System.in);
System.out.println("\n Please Enter the any integer Value below 10: ");
number = sc.nextInt();
while(number <= 10) {
sum = sum + number;
number++;
}
System.out.format(" Sum of the Numbers From this is: %d ", sum);
}
}
我们将输入的数字设为 = 7。这意味着,总计 = 7 + 8 + 9 + 10 = 34。

我们使用了 Java While 循环,并且其中的条件将确保给定的数字小于或等于 10。
在此示例中,用户输入的值为:数字 = 7。接下来,我们初始化 sum = 0。
第一次迭代
sum = sum + number
sum = 0 + 7 ==> 7
接下来,数字将增加 1(number++)。请参阅 Java 中的递增和递减运算符 文章,以了解此 ++ 符号。
第二次迭代
在第一次迭代中,Number 和 sum 都已更改,变为 Number = 8 和 sum = 7。
sum = 7 + 8 = 15
第三次迭代
从第二次迭代开始,Number = 9 且 sum = 15。
sum = 15 + 9 ==> 24
第四次迭代:在 while 循环的第三次迭代中,Number 和 sum 的值都已更改,变为 Number = 10 且 sum = 24。
sum = 24 + 10 ==> 34
接下来,数字将增加 1。
此时 Number = 11。因此,存在的条件将失败。
最后的 System.out.format 语句将打印给定数字中数字的个数作为输出。
Java 无限 While 循环示例
在此,如果跳过递增或递减数字,它将无限次运行,也称为无限循环。我将向您展示一个无限循环的示例。
package Test;
public class InfiniteExample {
public static void main(String[] args) {
int number = 1;
while (number <= 10) {
System.out.format("Numbers = %d ", number);
}
}
}
1
1
1
1
1
1
.....
....
在这个无限 While 循环示例中,数字永远是 1,它始终小于十。因此,它将无限次地执行该语句。
让我们在前一个示例中放入一个递增运算符(number++)。
package Test;
public class InfiniteExample {
public static void main(String[] args) {
int number = 1;
while (number <= 10) {
System.out.format("Values = %d\n", number);
number++;
}
}
}
现在,当它等于 10 时,条件将失败。此示例的输出为:
1
2
3
4
5
6
7
8
9
10
评论已关闭。