Java - 単項演算子

単項演算子

Java での単項演算子は以下のとおりです。

単項演算子
演算子説明結果
+正負をそのまま+aa (正負そのまま)
-正負を反転する-aa (正負を反転)
int a, b;

a = 10;
b = -a; // b = -10;
単項演算子

ただし、byte 型、short 型、char 型の場合には符号を反転させる前に対象の値を int 型へ暗黙的に型変換するため注意が必要です。明示的にキャスト演算子を使わない場合、コンパイル時に「精度が落ちている可能性」というコンパイルエラーが表示されます。

インクリメント・デクリメント演算子

インクリメント演算子とは、数値を 1 つだけ増加させる演算子です。デクリメント演算子とは、数値を 1 つだけ減少させる演算子です。

int a = 10;
a++; // 11

int b = 10;
b--; // 9
インクリメント・デクリメント演算子

インクリメント・デクリメント演算子は、前置き (前置演算子) と後置き (後置演算子) があります。

++変数, --変数 // 前置き
変数++, 変数-- // 後置き
インクリメント・デクリメント演算子

後置演算子の場合、インクリメント、またはデクリメント以外の演算が先に実行されます。その後、インクリメント、またはデクリメントされます。

int a = 10;
int b = a++;

System.out.println(b); // 10
インクリメント・デクリメント演算子

前置演算子の場合、インクリメント、またはデクリメントが先に実行されます。その後、他の演算が実行されます。

int a = 10;
int b = ++a;

System.out.println(b); // 11
インクリメント・デクリメント演算子

上記のように前置演算子と後置演算子は、使い方によっては結果が変わるため注意が必要です。

関連記事