do-while循环保证循环体至少执行一次,因其先执行后判断;while循环则先判断后执行,条件不满足时一次也不执行。

do-while 循环天生就保证循环体至少执行一次,因为它把条件判断放在循环体的末尾,而不是开头。
执行顺序决定“先干活,再判断”
与 while 和 for 不同,do-while 的结构是:先无条件执行一次循环体,然后才检查 while 后面的布尔表达式。只要条件为 true,就继续下一轮;如果第一次判断就为 false,循环也已经执行过一遍了。
语法结构如下:
do {
// 循环体(至少执行一次)
} while (布尔表达式); // 这里加分号
和 while 循环对比更清楚
假设初始条件就不满足:
Java JDK 25 来自 OpenJDK 官方归档,版本为 JDK 25,本条下载地址已指向官方 Windows x64 zip 安装包直链,适合调试旧项目或兼容旧版 Java 运行环境。
- while 循环:先判断,条件为 false → 直接跳过,循环体一次都不执行。
- do-while 循环:先执行循环体 → 再判断,即使条件为 false → 也已执行一次。
例如,当 int i = 5;,用 while (i 不会进入;但用 <code>do { ... } while (i 会执行一次循环体,再退出。
典型适用场景
适合需要“至少尝试一次”的逻辑,比如:
- 用户输入验证:先让用户输一次,再判断是否合法,不合法就重输。
- 菜单选择:先显示菜单、接收输入,再检查选项是否有效。
- 资源初始化后检查:先创建/获取资源,再判断是否成功,失败则重试。
注意细节:分号不能少
do-while 的 while (condition); 结尾必须有分号,这是语法要求。漏掉会导致编译错误,或让后续语句意外被纳入循环体。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










