int x = 10;
x += x++;
System.out.println(x);
なぜ上記のステートメントの答えは 20 ですか?
x++最初に実行されます。戻りx、 だけインクリメントxし1ます。
最後に、+=演算子はxの戻り値に加算します。x++これは でした10。
したがって、xになり、ステートメントによって20への変更が上書きされます。xx++
整数 x = 10; x += x++;
x=x+x と等しくなります
ここでx++、値を使用してインクリメントすることを意味するため、x値は10になります
したがって、結果は等しくなります20
の変更を確認したい場合は、次のx例を参照してください。
int x = 10;
int y = 10;
y +=x++;
System.out.println(y);
System.out.println(x);
印刷されます:
y=20
x=11////////////according to x++ and without to overwrite it