演算子

演算子の種類

Javaで演算に用いる様々な記号のことを、演算子(えんざんし)と言います。ここでは、様々な演算子とその分類を紹介します。Java言語には、以下のような演算子が存在します。

演算の分類演算子の種類演算の概要

二項演算
算術演算+  - *
/ %
主に数値に対する計算をします。特に+演算子は特有の文字列の結合にも用いられます。演算の結果、答えの数値や文字列が得られます。
算術演算<  >  <=  >=
==  !=
instanceof
2つのデータを比較して、大きいか小さいか、等しいか等しくないかを、true(真)もしくは、false(偽)のbooleanの形で返します。
論理演算&  ||
&&  |
!
boolean同士の論理演算AND(&&,&),OR(||,|),NOT(!)を行います。結果もまたbooleanでtrue(真)・false(偽)を反対にします。
ビット演算&  |  ^  ~
<<  >>
>>>
整数のデータに対してビット単位で処理を行います。
代入演算=  +=  -=
*=  /=%=  &=
|=  ^=
整数のデータに対してビット単位で処理を行います。
単項演算++  --  +  -  
!  ~
キャスト演算子
1つの値に対して計算などを行います。
三項演算?  :3つの値を基に計算します。

演算子の優先順位

各演算子には、優先順位があります。

順位処理内容演算子内容
1後置型単項演算子()括弧println()
[]配列要素a[3]=1;
.ドット演算子System.out.println
++ --インクリメント・デクリメント(後置)a++,a--
2前置型単項演算子++ --インクリメント・デクリメント(前置)++a,--a
+ -プラス符号、マイナス符号
(数値の正負を表す)
+a,-a
~ビットの反転~1
!論理否定!true
3オブジェクト生成と
キャスト演算子
newオブジェクト生成new String()
(型)キャスト(int)num
4四則演算(乗算・除算・剰余)* / %乗算、除算、剰余a * b,a / b,a % b
5四則演算(加算・減算)+ -加算、減算a+b,a-b
6シフト演算子<< >> >>>左シフト、右シフトa<<1,a>>1,a>>>1
7関係演算子< <=
> >=
instanceof
より小、以下
より大、以上
インスタンスかどうか確認
a<2,a<=2
a>2,a>=2
o instanceof A
8等値演算子== !=等しい、等しくないa == 0,a != b
9ビット論理積&AND演算a&b
10ビット排他的論理和^XOR演算a^b
11ビット論理和|OR演算a|b
12論理積&&AND演算(ショートカット)a==1 && b==1
13論理和||OR演算(ショートカット)a==1 || b==1
14条件演算子?:三項演算a ? x : y
15代入演算子=
+= -= *= /=
%= &= ^= |=
<<= >>=
代入a=3;  b+=5;  c%=3;