这是我无法理解的行为。
class loop1 {
public static void main(String args[]) {
int i = 10;
do
while(i++ < 15) {
System.out.println(i);
i = i + 20;
System.out.println(i);
}
while(i<2);
System.out.println(i);
}
}
我希望它打印出来
11
31
31
但它打印
11
31
32
我不明白为什么这个“32”出现在输出中。
这是我对流量的理解
- 我 = 10
- 在 while 循环中因为一元增量,它变成 11 所以这解释了第一个输出
- 11 通过 (+20) 增加到 31
- 然后 31 < 15 应该失败(在下一次迭代期间),因此它应该继续执行最后一个 print 语句并打印 31,但它正在打印 32。
有人能告诉我我错过了什么吗?