i++と++iの違い

この記事は約1分で読めます。

概要

前置インクリメント演算子(++i)と後置インクリメント演算子(i++)はどちらもiにi+1の結果を代入する演算子ですが、その違いについてざっくりと説明します。

前置インクリメント(++i)

式の値としてインクリメント後、つまりi+1の値を返します。

i = 1;
j = ++i; // jは2

後置インクリメント(i++)

式の値としてインクリメント前、つまりiの値を返します。

i = 1;
j = i++; // jは1

つまり

int i = 3;
i++;
System.out.println(i); // "4"
++i;
System.out.println(i); // "5"
System.out.println(++i); // "6"前置インクリメント:1を足して、数を返す。
System.out.println(i++); // "6"後置インクリメント:1を足す前の数を返し、1を足す。
System.out.println(i); // "7"

コメント

タイトルとURLをコピーしました