Java における前置および後置のインクリメント/デクリメント演算子
Java プログラミングでは、前置および後置のインクリメント/デクリメント演算子の違いを理解することが重要です。この記事では、これらの演算子の効果を実際の例で説明します。
質問:
次のコード スニペットを考えてみましょう。
int i = 3; i++; // Postfix increment System.out.println(i); // Prints "4" ++i; // Prefix increment System.out.println(i); // Prints "5" System.out.println(++i); // Prints "6" System.out.println(i++); // Prints "6" System.out.println(i); // Prints "7"
なぜそうなるのかSystem.out.println(i) への最後の呼び出しで値を出力します。 7?
答え:
このコードの動作は、前置および後置の増分演算子のセマンティクスによって制御されます:
前置増分:
int i = 6; System.out.println(++i); // Prints "6"
i は、その値を使用する前に i をインクリメントするため、7 と評価されます。表現の中で。したがって、「6」を出力し、i を 7 にインクリメントします。
Postfix Increment:
int i = 6; System.out.println(i++); // Prints "6" (i = 7, prints 6)
i は、i のコピーを格納するため、6 と評価され、追加されます。 1 を i に変換し、元の値を返します。式では「6」が出力されますが、i は現在 7 です。
最後の呼び出しで、System.out.println(i) は i の現在の値 (7) を出力します。これは、後置インクリメント演算子が使用されているためです。以前に 7 に更新していました。
以上がJava の接頭辞と後置のインクリメント/デクリメント: この例で「i」の結果が 7 になるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。