我无法弄清楚以下代码片段如何打印 13 作为输出。据我所知, while 条件应该继续循环,因为在这种情况下 i
始终小于 10
。我尝试调试但无法弄清楚。有人可以解释一下吗?
public class WhileCondition2
{
public static void main(String... args)
{
int i = 10;
while (i++ <= 10)
{
i++;
}
System.out.print(i);
}
}
最佳答案
第一次迭代:
while (i++ <= 10) { // i++ returns 10, so condition is true, i becomes 11
i++; // i becomes 12
}
第二次迭代:
while (i++ <= 10) // i++ returns 12, so condition is false, i becomes 13
因此i
的最终值为13。
关于java - 使用后增量控制 while 循环的流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29076620/