-3
Iは、Java 8のコードのこの部分を持っている:JAVAの1行の式で複数の前/後のインクリメントの順序は?
私はそれがこのように分割されなければならない理解するようint x=3; int y = --x + x++ + --x ; System.out.print("y: " + y + " x: "+x);
:
- Y = 2 + X ++ + --x。 x = 2
- y = 2 + 2 + - x; x = 2
- y = 2 + 2 + 1; x = 1
- y = 5; x = 2
y: 6 x: 2
ここでの操作の順序は何ですか?
第3の動作も場合predecrementation でなります'y = --x + -x' yは3、xは1になります。 この例では2番目の-xは3ではなく2で初期化されていますか? –
はい、2(プリ)デクリメントと1(ポスト)インクリメントは、結果的に1減少し、 'x'の値を2に変更します。 –
私は最終的なxが2である理由を理解しています。最初に '2 +2 + 1'を与えた後でsecond(pre)が呼び出されないのはなぜですか? –