OR
誰でも自由に記事を投稿・編集できるオープンリファレンス
記事ID:687
区分:プログラム  |  分類:Java  |  最終更新日:2015/09/03
クリエイティブ・コモンズ 表示-継承ライセンス 2.1
【Java】演算子
関連タグ:Java, 算術演算子, 比較演算子, 論理演算子, ビット演算子, シフト演算子, 代入演算子, 単項演算子, 三項演算子
このエントリーをはてなブックマークに追加      
本文
履歴
編集
閲覧数: 2,476
Java関連技術まとめ > 【Java】演算子

プログラムで値を計算したり、評価したりする場合に使用するのが演算子です。

Javaで利用可能な演算子は以下になります。

 

算術演算子

算術演算子はその名の通り、四則演算や剰余を求める際に使用します。

Javaの算術演算子には以下の演算子が用意されています。

演算子意味使用例使用例説明
+ 加算 x+y xとyを足し合わせた結果を返します。
- 減算 x-y xからyを引いた結果を返します。
* 乗算 x*y xとyを掛け合わせた結果を返します。
/ 除算 x/y xをyで割った結果を返します。
% 剰余 x%y xをyで割った余りを返します。

比較演算子

比較演算子はオペランド(演算対象)の比較を行う際に使用します。演算結果がtrue/falseで返るため、主に条件文などで使用します。

Javaの比較演算子には以下の演算子が用意されています。

演算子意味使用例使用例説明
== 等しい x==y xとyが等しい場合にtrueを返します。
!= 等しくない x!=y xとyが等しくない場合にtrueを返します。
< より小さい x<y xがyより小さい場合にtrueを返します。
> より大きい x>y xがyより大きい場合にtrueを返します。
<= 以下 x<=y xがy以下(等しいかより小さい)の場合にtrueを返します。
>= 以上 x>=y xがy以上(等しいかより大きい)の場合にtrueを返します。

論理演算子

論理演算子はオペランドの論理値を評価し、結果をtrue/falseで返します。比較演算子同様、主に条件文などで使用します。

Javaの論理演算子には以下の演算子が用意されています。

演算子意味使用例使用例説明
&& 論理積 x&&y xとyが共にtrueの場合にtrueを返します。
|| 論理和 x||y xとyのどちらかがtrueの場合にtrueを返します。
! 否定 !x xがfalseの場合にtrueを返します。

ビット演算子

ビット演算子はオペランドをビットで評価し、演算結果を返します。ビット演算はその性質上、整数型の値に対して行います。

Javaのビット演算子には以下の演算子が用意されています。

演算子意味使用例使用例説明
& 論理積(AND) x&y xとyのビットを比較し、ビットごとにAND演算した結果を返します。
| 論理和(OR) x|y xとyのビットを比較し、ビットごとにOR演算した結果を返します。
^ 排他的論理和(EOR) x^y xとyのビットを比較し、ビットごとにEOR演算した結果を返します。
~ ビット反転 ~x xの各ビットを反転させた値を返します。

シフト演算子

シフト演算子は対象のオペランドのビットを左右にシフトし、その結果を返します。ビット演算同様、整数型の値に対して行います

Javaのシフト演算子には以下の演算子が用意されています。

演算子意味使用例使用例説明
<< 算術左シフト x<<y xのビットを左にyだけシフトした結果を返します。シフトした右端には0が補完されます。
>> 算術右シフト x>>y xのビットを右にyだけシフトした結果を返します。シフトした左端には最上位ビット(符号ビット)と同じ値が補完されます。
>>> 論理右シフト x>>>y

xのビットを右にyだけシフトした結果を返します。シフトした左端には0が補完されます。

※論理シフトは符号を考慮しないため、負数を扱う場合は注意が必要です。

代入演算子

代入演算子は値を変数やオブジェクトに代入する際に使用します。

Javaの代入演算子には以下の演算子が用意されています。

演算子意味使用例使用例説明
= 代入 x=y xにyを代入します。

単項演算子

単項演算子は対象オペランドの評価と1の加減算を行います。++演算子で1の加算を、--演算子で1の減算を行います。また、演算子はオペランドの左右どちらに記述しても構いませんが、どちらに置くかで動作が異なります。単項演算子は演算の前後にオペランドを評価しますが、左に置いた場合は演算後に評価を、右に置いた場合は評価後に演算を行います。これは返る値が異なることを意味します。++演算子を例した場合、「++オペランド」ではオペランド+1の値が帰りますが、「オペランド++」ではオペランド自体が返ります。これは値の評価が先に行われるためで、この場合、値を返した後にオペランドに1の加算がされます。

Javaの単項演算子には以下の演算子が用意されています。

演算子意味使用例使用例説明
++ インクリメント ++x(またはx++)

【++xの場合】xに1を加算し結果を返します。

【x++の場合】xを返しその後xに1を加算します。

-- デクリメント --y(またはy--)

【--yの場合】yから1を減算した結果を返します。

【y--の場合】yを返しその後yから1を減算します。

関連記事
関連記事はありません。
外部リンク
外部リンクはありません。
- 記事検索 -