Java-演算子-
演算子
-
- 算術演算子
- 四則計算を行う為の演算子
-
- 代入演算子
- 数値の計算を行う為の演算子
-
- 関係演算子
- 比較を行う為の演算子
-
- 論理演算子
- 論理式の計算を行う為の演算子
-
- 文字列連結演算子
- 文字連結を行うことのできる演算子
1.算術演算子
+ | a+b | 加算 |
---|---|---|
ー | a-b | 減算 |
* | a+b | 加算 |
/ | a/b | 除算 |
2.代入演算子
+= | b+=a | b=b+a |
ー= | b-=a | b=b-a |
*= | b*=a | b=b*a |
/= | b/=a | b=b/a |
%= | b%=a | b=b%a |
(注)代入演算子は、キャストすべき代入がキャストなしで出来ます。
(例)
double a=1.0;
int b=2;
b+=a; // OK
b=b+a; //コンパイルエラー
インクリメントとデクリメント
-
- インクリメント「++」
- (例)a++ ++a →a=a+1
-
- デクリメント「ーー」
- (例)a-- --a →a=a-1
後評価
式を計算した後に加減算等を行います
例)a++ a--
(使用例)
int a=2;
int b=a++; //aをbに代入した後aに1を加算されます。
前評価
加減算等を行った後に式の計算を行います
例)++a --a
(使用例)
int a=2;
int b=++a; //aに1を加算した後その値をbに代入されます。
3.関係演算子
> | a>b | aはbより大きい |
>= | a>=b | aはb以上 |
< | a<b | aはbより小さい |
<= | a<=b | aはb以下 |
== | a==b | aはbに等しい |
!= | a!=b | aはbに等しくない |
4.論理演算子
&& | a && b | 論理積 AND (短絡評価) |
|| | a || b | 論理和 OR (短絡評価) |
^ | a ^b | 排他的論理和 XOR aとbが異なる時true |
! | !a | NOT 反転した結果 |
(注)短絡評価時は、インクリメント・デクリメントに注意すること
「&&」短絡評価 演算結果がでたところで、残りは評価しません。
「&」演算結果がでても最後まで評価します。
5.文字列連結演算子
「+」記号を使用することで複数の文字を連結できます。
(例)"あい"+"うえお" → あいうえお
(注)文字列と数値を連結する場合数値は文字列に自動変換されます。
数値の計算をしたいときは、( )で囲む
(例)"ABC"+2 → ABC2
(例)"1"+2 → 12
(例)"a+b="+(1+2) → a+b=3
6.多重代入式
a=b=c
右側から順に実行される 宣言と代入式は別に記述する必要があります。
7.演算子の優先順位
高 | 1 | 後置きインクリメント・デクリメント | ++ , -- | 左→ |
2 | 前置きインクリメント・デクリメント | ++ , -- | ←右 | |
3 | 単項プラス・マイナス | + , - | ←右 | |
↓ | 4 | 論理否定 | ! | ←右 |
↓ | 5 | キャスト(型変換) | (型) | ←右 |
6 | 乗、除、剰余 | * , / , % | 左→ | |
7 | 加算、減算 | + , - | 左→ | |
8 | 文字列連結 | + | 左→ | |
9 | 関係演算子(大小比較等) | < ,<= , > , >= | 左→ | |
10 | 関係演算子(等値、不等値) | == , != | 左→ | |
11 | 論理演算子(非短絡の&) | & | 左→ | |
12 | 論理演算子(排他的論理和) | ^ | 左→ | |
13 | 論理演算子(非短絡の|) | | | 左→ | |
14 | 論理演算子(論理積) | && | 左→ | |
15 | 論理演算子(論理和) | || | 左→ | |
低 | 16 | 代入演算子 | = , += , /= , %= , += , -= | ←右 |