Java基本

[Java] インクリメント演算子の前置と後置の違い

投稿日:

インクリメント演算子の前置と後置では以下の違いがあります。


前置き(++x)の場合は、インクリメントした後に対象変数が読み込まれます。
後置き(x++)の場合は、対象変数が読み込まれた後にインクリメントします。

サンプルソース

例)前置きの場合

結果
11 11

例)後置きの場合

結果
10 11

前置きの場合は、System.out.printlnで表示する前にインクリメントしているため加算後の結果が表示されます。 後置きの場合は、System.out.printlnで表示した後にインクリメントしているため加算前の結果が表示されます。 最終的な値はどちらも同じ値になります。

備考

  • 前置きと後置きで動きが異なるため、コーディング時はご注意ください。

スポンサーリンク

スポンサーリンク

-Java基本

執筆者:


  1. sio より:

    すみません、Java学習中の者なのですがこの記事ではなく「Javaちょこっとリファレンス」のほうにて、乗算がint i = 2^3;でできるとの記載があるのですが、これは何か特別な条件下で使える演算子でしょうか。
    私のほうでは、条件演算子に変換されてしまって使用できません。

    • azuki より:

      コメントありがとうございます。
      すみません記載ミスでした。

      乗算はMath.pow(m,n)を使用します。
      (例)2の3乗 Math.pow(2,3) ⇒8.0 ※戻り型はdouble型です。

      ^は排他的論理和を返す演算子でした。
      (例)5^6 ⇒3
      5⇒101
      6⇒110
      --------
      排他的論理和⇒011 ⇒3

      記事を訂正いたします。

sio へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

関連記事

[Java共通部品] 日付文字列(YYYYMMDD)から曜日を取得する

日付文字列(YYYYMMDD)から曜日を取得する共通関数です。 サンプルメソッド 例)日付文字列(Y ...

[Java] 空のファイルを作成する

Javaで空のファイルを作成するサンプルです。 サンプルソース 例)Cドライブ直下にtestfile ...

[Java共通部品] null置換(NVL関数)

値がnullの場合に指定した値を返すメソッド(ORACLEのNVL関数)のサンプルです。 サンプルメ ...

[Java例外] java.lang.ArrayIndexOutOfBoundsException

以下のように表示されます。 (例外表示) Exception in thread "xxx" jav ...

[Java] 配列の全要素に初期値をセットする

配列の全要素に初期値セットしたい時は、 java.util.Arraysクラスのfillメソッドが便 ...