Java while循环无显式更新却执行四次?求清晰解释
关于Java while循环的疑问解答
Java代码示例
import java.util.*; import java.io.*; class Main { public static void main(String[] args) { int a=0; while (a++ < 4) { System.out.println("Check"); } } }
运行结果
Check Check Check Check
用户疑问
该while循环中没有用于重复执行的显式更新语句。我原本以为只会输出一次Check,但实际运行却显示四次。我并非IT专业学生,希望能得到清晰易懂的解释。
解答
你觉得循环里没更新变量,其实是更新操作藏在循环条件里的a++里了。这里的a++是后置自增运算符,规则很简单:先拿变量当前的值去做判断,判断完成后再把变量的值加1。
我们一步步拆解每一次循环的过程:
- 初始时
a=0,进入while判断:先拿0和4比,0<4成立,执行打印"Check",之后a变成1; - 第二次循环:拿当前a的值1和4比,1<4成立,打印,a变成2;
- 第三次循环:拿2和4比,成立,打印,a变成3;
- 第四次循环:拿3和4比,成立,打印,a变成4;
- 第五次判断:拿4和4比,4<4不成立,循环直接结束。
这样算下来,刚好执行了4次打印操作,所以会输出4行"Check"。
内容的提问来源于stack exchange,提问作者Naresh Arekatika
相关产品推荐
相关产品推荐

