和 while 循环条件相似,如果条件判断表达式里面条件成功,就会执行,和 while 不同点之处在于 do while 至少会执行 do 方法体里面的操作。
do{
//do something
}while(condition)
参数 | 描述 |
---|---|
do | do 循环控制的关键字 |
while | while 里面接收条件判断 |
condition | 条件判断表达式 |
在 do 后面的 {}
方法体里面的操作会最少执行一次,无论 condition 的结果是真是假。
package com.haicoder.net.basic;
public class WhileTest {
public static void main(String[] args) {
System.out.println("嗨客网(www.haicoder.net)");
int a = 10;
do{
System.out.println("当前的 a 的值 : " + a);
a -- ;
}while (a > 5);
System.out.println("执行结束");
}
}
运行结果如下:
我们可以看到运行的结果和我们预期一样,a 的条件满足 > 5 的时候,会将数据输出。
package com.haicoder.net.basic;
public class WhileTest {
public static void main(String[] args) {
System.out.println("嗨客网(www.haicoder.net)");
int a = 10;
do{
System.out.println("当前的 a 的值 : " + a);
a -- ;
}while (a < 5);
System.out.println("执行结束");
}
}
运行结果如下;
从运行结果中我们可以看到,一开始的 10 是不满足条件 10 < 5
的,但是它还是执行了一次 do 里面的方法体。
package com.haicoder.net.basic;
public class WhileTest {
public static void main(String[] args) {
System.out.println("嗨客网(www.haicoder.net)");
int a = 10;
do{
System.out.println("当前的 a 的值 : " + a);
a -- ;
break;
}while (a > 5);
System.out.println("执行结束");
}
}
运行结果如下:
我们可以发现,do while 里面的 break 和 while 里面的 break 使用场景是一样的,它都会跳出当前的循环方法体,无论条件满足不满足。
在 Java 中,do while 的效果其实和 while 的效果差不多,但是 do while 会保证方法体必然执行一次,无论条件满足不满足。