では「前置が連続するパターン」を丁寧に追ってみましょう。
int a = 2;
int b = ++a + ++a + a++;
System.out.println("a = " + a);
System.out.println("b = " + b);
Javaステップごとの解説
初期値
a = 2
1つ目の ++a
- 前置インクリメント
- 先に +1 → a = 3
- 使う値 = 3
2つ目の ++a
- 今の a = 3
- 前置なので、先に +1 → a = 4
- 使う値 = 4
3つ目の a++
- 今の a = 4
- 後置インクリメント
- 使う値 = 4
- その後 a = 5
計算まとめ
b = (3) + (4) + (4) = 11
最終結果
a = 5
b = 11
ポイント整理
- 前置が続くと「どんどん増えてから使う」ので、値が階段状に上がっていく。
- 後置が最後に来ると「今の値を使ってから増える」ので、最終的に a がさらに1つ進む。
💡 まとめると:
a++ + a++ + ++a→ a=5, b=10a++ + ++a + a++→ a=5, b=10++a + ++a + a++→ a=5, b=11
