【发布时间】:2021-08-04 02:49:46
【问题描述】:
我有这段简单的代码,但我不明白这部分:sum += i++。
int num1 = 5;
int sum = 0;
if (num1 < 100) {
for (int i = 0; i < num1; i++)
sum += i++; //?
System.out.println("sum = " + sum);
} else {
sum = -1;
}
System.out.print(sum);
我得到的结果是 6,我不明白如何以及为什么。
【问题讨论】:
-
这看起来是一个很好的使用调试器的候选者,可以逐行执行每一行代码,并逐步查看每个变量的值如何变化。您甚至可以按照此处的答案提供的演练进行操作。
-
@andrewjames 虽然这可能会让您对不断变化的价值观有所了解,但它并不能解释为什么价值观会改变它们的行为方式。
-
是的 - 我同意,@TiMauzi。答案中的语法解释对此有很大帮助。
标签: java logic increment postfix-operator