Java 简明教程
Java - while Loop
Java while Loop
Java 编程语言中的 while 循环语句重复执行代码块,只要给定的条件为真。
A while loop statement in Java programming language repeatedly executes a code block as long as a given condition is true.
while 循环是一个条目控制循环,其中在执行循环体之前检查条件。
The while loop is an entry control loop, where condition is checked before executing the loop’s body.
Syntax of while Loop
while 循环的语法为 −
The syntax of a while loop is −
while(Boolean_expression) {
// Statements
}
Execution Process of a while Loop
此处,statement(s) 可能是一个语句或一个语句块。 condition 可能为任意表达式,而 true 为任何非零值。
Here, statement(s) may be a single statement or a block of statements. The condition may be any expression, and true is any non zero value.
执行时,如果 boolean_expression 结果为真,那么循环内部的操作将被执行。只要该表达式结果为真,此操作就会继续。
When executing, if the boolean_expression result is true, then the actions inside the loop will be executed. This will continue as long as the expression result is true.
当条件变为假时,程序控制权将传递到循环之后的行。
When the condition becomes false, program control passes to the line immediately following the loop.
Flow Diagram
下图显示了 Java 中 while 循环的流程图(执行过程) -
The following diagram shows the flow diagram (execution process) of a while loop in Java -
在此,while 循环的关键点在于 loop 可能永远不会运行。当表达式经过测试且结果为 false 时,循环体将会被跳过,并且 while 循环之后的第一个语句将会被执行。
Here, key point of the while loop is that the loop might not ever run. When the expression is tested and the result is false, the loop body will be skipped and the first statement after the while loop will be executed.
Examples of while Loop
Example 1: Printing Numbers in a Range Using while Loop
在这个例子中,我们正在展示 while 循环用于打印从 10 到 19 的数字。在这里我们用 10 的值初始化了一个 int variable x。然后在 while 循环中,我们检查 x 是否小于 20,并在 while 循环中,我们打印 x 的值并且将 x 的值增加 1。while 循环将一直运行直到 x 变为 20。一旦 x 为 20,循环将停止执行,程序退出。
In this example, we’re showing the use of a while loop to print numbers starting from 10 to 19. Here we’ve initialized an int variable x with a value of 10. Then in while loop, we’re checking x as less than 20 and within while loop, we’re printing the value of x and incrementing the value of x by 1. While loop will run until x becomes 20. Once x is 20, loop will stop execution and program exits.
public class Test {
public static void main(String args[]) {
int x = 10;
while( x < 20 ) {
System.out.print("value of x : " + x );
x++;
System.out.print("\n");
}
}
}
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19
Example 2: Printing Elements of an Array Using while Loop
在这个例子中,我们正在展示 while 循环用于打印一个 array 的内容。在这里我们创建一个整数数组作为 numbers,并且用一些值初始化它。我们创建了一个名为 index 的变量来表示数组的索引,同时对其进行迭代。在 while 循环中,我们检查 index 是否小于数组的大小,并且使用索引符号打印数组的元素。index 变量增加 1,并且循环一直持续到 index 变为数组的大小,然后循环退出。
In this example, we’re showing the use of a while loop to print contents of an array. Here we’re creating an array of integers as numbers and initialized it some values. We’ve created a variable named index to represent index of the array while iterating it. In while loop we’re checking the index to be less than size of the array and printed the element of the array using index notation. index variable is incremented by 1 and loop continues till index becomes the sie of the array and loop exits.
public class Test {
public static void main(String args[]) {
int [] numbers = {10, 20, 30, 40, 50};
int index = 0;
while( index < 5 ) {
System.out.print("value of item : " + numbers[index] );
index++;
System.out.print("\n");
}
}
}
value of item : 10
value of item : 20
value of item : 30
value of item : 40
value of item : 50
Infinite While Loop in Java
您可以使用 while 循环语句实现一个无限 while 循环,方法是将“true”作为测试条件。
You can implement an infinite while loop using the while loop statement by providing "true" as the test condition.
Example 3: Implementing Nested while Loop
在这个示例中,我们展示了使用 while 循环的无限循环。它将继续打印数字,直到你按 ctrl+c 终止程序。
In this example, we’re showing the infinite loop using while loop. It will keep printing the numbers until you press ctrl+c to terminate the program.
public class Test {
public static void main(String args[]) {
int x = 10;
while( true ) {
System.out.print("value of x : " + x );
x++;
System.out.print("\n");
}
}
}
value of item : 10
value of item : 20
value of item : 30
value of item : 40
value of item : 50
...
ctrl+c