while循环先判断后执行,条件为true时执行循环体,需在体内修改变量防死循环;do-while先执行后判断,至少运行一次。

Java 中 while 循环通过在循环开始前检查一个布尔表达式来实现条件控制——只有表达式结果为 true 时,才执行循环体;一旦为 false,立即退出循环。关键在于:条件写在圆括号里,循环体用花括号包裹(即使只有一行语句,也建议保留),且必须在循环体内修改相关变量,否则容易陷入死循环。
基础语法结构
标准写法如下:
while (布尔表达式) {
// 循环体:当表达式为 true 时重复执行的代码
// 必须包含能影响表达式结果的语句(如变量更新)
}
例如,打印 1 到 5:
int i = 1; while (i <h3>常见条件控制方式</h3>
-
数值范围控制:用计数器配合关系运算符(
、<code>、<code>>等),适合已知迭代次数或边界的情况 -
输入/状态判断:比如读取用户输入直到输入 "quit",条件可写成
!input.equals("quit") -
对象或集合遍历:配合
Iterator的hasNext()或链表节点是否为null来控制(注意空指针风险) -
复合条件:用逻辑运算符组合多个条件,如
count > 0 && !list.isEmpty(),注意短路特性(&&左边为false时不计算右边)
避免死循环的关键细节
死循环大多源于条件永远为 true。排查时重点看三点:
- 循环变量是否在循环体内被修改(如漏写
i++或写错变量名) - 修改操作是否在所有执行路径中都发生(比如被
if包裹但条件不满足,导致跳过更新) - 条件表达式是否受外部干扰(如多线程环境下变量被意外修改,一般初学暂不涉及)
与 do-while 的区别要点
while 是“先判断后执行”,可能一次都不运行;do-while 是“先执行后判断”,至少执行一次。如果业务逻辑要求必须执行一轮再看是否继续(比如菜单选择、密码重试),优先考虑 do-while。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











