Java while 与 do...while 语句

Java 中的条件循环控制语句是 while 与 do...while. 两组语句通过词的不同, 我们就可以看出其中的区别:

  • while 是判断条件然后决定是否开始循环
  • do...while 是干了再说, 再根据条件判断要不要继续循环

下面我们通过代码来学习 while 和 do...while 的使用.

Java 中的 while

while 的基本语法如下:

while (表达式) {
     //循环内容
}

while 的使用时需要注意的是:

  • 表达式必须是值个 boolean 型的表达式
  • 如果表达式的值恒为 true, 那么这个循环一旦除开, 除非手动终止整个程序, 否则循环不会停止, 这种循环我们又称之为: 无限循环(又叫死循环)

做了一些基础的了解后, 我们可以开始编写代码了, 示例代码如下:

class Yi21Runner {
    public static void main(String[] args) {
        int i = 5;
        while(i > 0) {
            System.out.println(i);
            i--;
        }
    }
}

在这段代码中, 我们定义了 i 的起始值为5, 循环条件是当 i > 0, 在执行的过程中, 我们每次执行循环首先输出一下当前i的值, 然后将在 i 的自减, 这样i就会越来越小, 直到 i 不再大于 0 结束, 最终执行结果如下:

5
4
3
2
1

用 while 编写无线循环

如果, 你需要一个无限循环, 比如写一个监控程序不中段的检测一个设备是否正常, 你可能就需要使用到无限循环, 它的模拟实现如下:

while(true) {
    System.out.println("一切正常");
}

执行上面的代码, 会不停的输出 "一切正常", 直到你终止这个程序(通常是 Ctrl+C)

Java 中的 do...while

do...while 和 while 类似, 重点在于它会先 do, 基本语法如下:

do {
    //执行内容
} while(表达式);

下面我们根据表达式实现一个示例:

int i = 1;
do {
    System.out.println(i);
    i--;
    System.out.println(i);
} while(i > 1);

上述代码中, 循环执行的条件是 i > 1, 初始的时候 i = 1, 在循环体中首先输出了 i, 然后对 i 进行了自减操作, 然后再输出 i, 此时的i已经变成了0, 再进入 while 循环, 判断是小于 1 的, 所以循环结束, 结果如下:

1
0

如果上述代码, 是 while 的循环, 那么因为 i 并不大于 1, 所以是无法进入循环的.

好了, 以上就是 Java 的 while 与 do...while 语句的全部内容了.

下一节请看: Java for 语句