回答編集履歴

1

説明の追加

2019/01/20 17:22

投稿

jimbe
jimbe

スコア12648

test CHANGED
@@ -18,9 +18,9 @@
18
18
 
19
19
 
20
20
 
21
- out.print() は括弧の中の値を表示するモノなので, 当然括弧の中が先に計算されます. が, ++/-- はその「計算されるタイミング」に干渉します.
21
+ out.print() は括弧の中の値を表示するモノなので, 当然括弧の中が先に計算されます. が, ++/-- はその「計算(=変数の値が変更)されるタイミング」に干渉します.
22
22
 
23
- 変数の前に ++/-- を書いた場合は先に計算される(普通の)タイミングですが, 後ろに書いた場合は out.print() が先に実行され, その後に計算されるのです. ++/-- の付いている部分が括弧の後ろまで飛び出して, out.print(num++); が out.print(num); num++; となってしまうような感じでしょうか.
23
+ 変数の前に ++/-- を書いた場合は先に計算される(普通の)タイミングですが, 後ろに書いた場合は out.print() が先に実行され, その後に計算(変数の値が変更)されるのです. ++/-- の付いている部分が括弧の後ろまで飛び出して, out.print(num++); が out.print(num); num++; となってしまうような感じでしょうか.
24
24
 
25
25
  「飛び出したら out.print(); num++; じゃないの?」と思われるでしょうけれど, ++/-- は変数部分は残すのです.
26
26