“x=x++”后面的x是什么?

mrfwxfqh  于 2021-06-26  发布在  Java
关注(0)|答案(17)|浏览(685)

当这个被执行时(在窗帘后面)会发生什么?

int x = 7;
x = x++;

也就是说,当一个变量在一个语句中被后置递增并赋值给它自己时?我编译并执行了这个。 x 即使在整个声明之后仍然是7。在我的书中,它说 x 是递增的!

rvpgvaaj

rvpgvaaj16#

x=x++;
这是后增量运算符。应该理解为“使用操作数的值,然后递增操作数”。
如果希望发生相反的情况,即“先递增操作数,然后使用操作数的值”,则必须使用如下所示的预递增运算符。
x=++x;
此运算符首先将x的值递增1,然后将值赋回x。

irtuqstp

irtuqstp17#

当您重新为 x 现在还是7点。尝试 x = ++x 你还可以得到8个

x++; // don't re-assign, just increment
System.out.println(x); // prints 8

相关问题