可能重复:
java中的递减
我在看这个问题,Java 中的 Decrement,它激起了我的好奇心。我了解后/前递增/递减的工作原理,但我想知道为什么它在特定情况下的工作方式。
例如,
int x = 5;
x--;
很明显将 x 设置为 4。但如果你这样做,
x = x--;
x 仍然是 5 (正如引用问题的发布者所发现的那样)。根据我对后减量的理解,它在修改它之前返回值。所以我期望发生的事情会x = 5
首先发生。(与上述保持一致)。然后,x 递减,所以在我看来,x--;
会运行,在上面清楚地将 x 设置为 4。
我的意思是,是的,这很容易做到,x--;
但我想了解为什么 Java 的 post decrement 会以这种方式工作。
我尝试了下面的代码,它完全按预期工作。
int x = 5;
int y = x--;
y
设置为 5 并x
适当递减。为什么不会发生同样的情况x = x--;
?