掌握 Java while 循环的基本语法与执行流程
理解 while 循环与 for 循环的适用场景差异
能够使用 while 循环实现重复操作和累加计算
避免因缺少更新表达式导致的无限循环
了解单语句循环体的书写规范
while 循环是 Java 中一种条件控制型循环结构,它会反复执行一段代码块,直到指定的条件变为 false。与 for 循环不同,while 更适用于循环次数未知或依赖动态条件的场景。
✅ 核心特点:先判断条件,再决定是否执行循环体
public class WhileLoop {
public static void main(String[] args) {
int c = 1; // 初始化计数器
while (c <= 5) {
System.out.println(c);
c++; // 更新计数器
}
}
}输出结果:
1
2
3
4
5变量 c 初始值为 1
每次循环前检查 c <= 5:
若为 true → 打印当前值,并将 c 加 1
若为 false(即 c = 6)→ 跳出循环
循环结束后,程序继续执行后续语句(本例中无)
while (条件表达式) {
// 循环体:要重复执行的语句
// 通常包含更新表达式(如 i++)
}关键组成部分
⚠️ 注意:如果省略大括号
{},while仅将紧随其后的第一条语句视为循环体。
✅ 正确示例(单语句):
int i = 0;
while (i < 3)
System.out.println(i++);❌ 危险示例(意图执行两条语句但未加大括号):
int i = 0;
while (i < 3)
System.out.println(i); // 会被循环
i++; // 不会被循环!只执行一次
执行顺序:
检查条件
若为真 → 执行循环体 → 更新变量 → 回到步骤 1
若为假 → 跳出循环
🔁 与
for循环不同,while不强制要求初始化和更新写在循环头部,需程序员自行管理。
class whileLoop {
public static void main(String args[]) {
int i = 1;
while (i < 6) {
System.out.println("Hello World");
i++;
}
}
}输出:
Hello World
Hello World
Hello World
Hello World
Hello World💡 应用场景:重试机制、用户输入验证、游戏主循环等。
class whileLoop {
public static void main(String args[]) {
int i = 1, sum = 0;
while (i <= 10) {
sum = sum + i; // 或 sum += i;
i++;
}
System.out.println("Summation: " + sum);
}
}输出: Summation: 55(因为 1+2+…+10 = 55)
✅ 这展示了
while在累积计算中的典型用法。
int x = 1;
while (x <= 5) {
System.out.println(x);
// 忘记 x++ → 条件永远为真!
}❌ 程序将无限打印
1,最终可能因资源耗尽而崩溃。
false int n = 10;
while (n < 5) {
System.out.println("This won't print");
n++;
}✅ 这是正常行为,
while是先判断后执行。
编写一个 while 循环程序,让用户不断输入数字,直到输入 0 为止,并输出所有输入数字的总和。
如果将 while (true) 与 break 结合使用,能否模拟 for 循环的行为?请尝试实现打印 1 到 5。
在什么情况下,使用 do-while 比 while 更合适?(提示:考虑循环体至少执行一次的需求)