3

可能重复:
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--;

4

0 回答 0