# Java 中的`while`循环

> 原文： [https://beginnersbook.com/2015/03/while-loop-in-java-with-examples/](https://beginnersbook.com/2015/03/while-loop-in-java-with-examples/)

在上一个教程中，我们讨论了[`for`循环](https://beginnersbook.com/2015/03/for-loop-in-java-with-example/) 。在本教程中，我们将讨论`while`循环。如前一个教程中所讨论的，循环用于重复执行一组语句，直到满足特定条件。

#### `while`循环的语法

```java
while(condition)
{
   statement(s);
}
```

## `while`循环如何工作？

在`while`循环中，首先计算条件，如果它返回`true`，则`while`循环中的语句执行。当条件返回`false`时，控制流退出循环并跳转到`while`循环后的下一个语句。

> 注意：使用`while`循环时要注意的重点是我们需要在`while`循环中使用递增或递减语句，以便循环变量在每次迭代时都会更改，并且在某些情况下返回`false`。这样我们就可以结束`while`循环的执行，否则循环将无限期地执行。


![while loop java](img/e233c4340995c702d756930ee013d394.jpg)

## 简单的`while`循环示例

```java
class WhileLoopExample {
    public static void main(String args[]){
         int i=10;
         while(i>1){
              System.out.println(i);
              i--;
         }
    }
}
```

**输出：**

```java
10
9
8
7
6
5
4
3
2
```

## 无限循环

```java
class WhileLoopExample2 {
    public static void main(String args[]){
         int i=10;
         while(i>1)
         {
             System.out.println(i);
              i++;
         }
    }
}
```

这个循环永远不会结束，它是一个无限循环。这是因为条件是`i > 1`，因为我们在循环中递增`i`的值，所以它总是为真。

这是无限`while`循环的另一个例子：

```java
while (true){
    statement(s);
}
```

## 示例：使用`while`循环迭代数组

这里我们使用`while`循环迭代并显示数组元素。

```java
class WhileLoopExample3 {
    public static void main(String args[]){
         int arr[]={2,11,45,9};
         //i starts with 0 as array index starts with 0 too
         int i=0;
         while(i<4){
              System.out.println(arr[i]);
              i++;
         }
    }
}
```

**输出：**

```java
2
11
45
9
```

查看这些相关的[程序](https://beginnersbook.com/2017/09/java-examples/)：

1.  [Java 程序：使用`while`循环显示 Fibonacci 序列](https://beginnersbook.com/2017/09/java-program-to-display-fibonacci-series-using-loops/)
2.  [Java 程序：使用`while`循环查找阶乘](https://beginnersbook.com/2017/09/java-program-to-find-factorial-using-for-and-while-loop/)