x = 2;
y = x++;
System.out.println(y)
如果 x 之后增加,y 会打印出 2 还是会打印出 3,为什么?如果这是前缀,它会只打印出 3 吗?
它将打印 2 并且它发生的原因是
y=x++;
第1步:
assign x value to y
第2步:(增加x值)
x= x+1;
这就是它发生的原因。
它首先将值分配给y
& 然后x
增加1
.
这是一个post increment
。
这首先将值赋给 & 的左侧变量,=
然后将右侧变量x
增加 1。
这里y=2
,但是x=3
由于加号位于变量之后,因此称为后增量。如果在变量之前,它将被称为预增量。使用预增量 y 将被分配 x+1。与后增量一样,y 将被分配 x,然后 x 将增加 1,之后为 3,但 y 将为 2。
x = 2; y = x++;
y 为 2,x 为 3。
x = 2; y = ++x;
x,y 都是 3。