はじめに
皆さん。こんにちは!
DreamHanksの254cmです。
今回は演算子について説明していきます。
Java記事のまとめはこちらです。
前回の記事は【Java開発】第1回 変数です。
演算子
Javaでは色んな演算を対応するために多様な演算子を提供しています。
Javaが提供する演算子は下記のようになります。
- 増減演算子
- 算術演算子
- シフト演算子
- ビート演算子
- 比較演算子
- 論理演算子
- 条件演算子
- 代入演算子
- instanceof演算子
各演算子について学びましょう。
※演算は式を計算して結果を出す過程を演算と呼びます。
演算子の種類
・増減演算子
増減演算子は演算される変数の値に1を足したり引きたりする演算子です。
ただし、演算子が付けられる位置によって増減されるタイミングが変わります。
・算術演算子
数学の四則演算と同様なものですが、残り算というものがもう一つあります。
※残り算とは?
対象の値を割ってからの残りを出す演算です。
例)8 % 3 = 2
8 % 10 = 8
・シフト演算子
シフト演算子は演算される値を2進数のビート単位で展開してその2進数のビートの桁を移動させる演算子です。
ビートの話は2進数を扱う記事でもっと詳しく扱います。
例)
1 2 3 |
int value = 13; value = value << 1; System.out.println(value); // 26 |
2行目でvalueの値を左に1桁移動させています。
その動作を2進数で考えてみると
13は2進数で展開しると
1101
です。
この2進数の桁を左に移動させると
11010
になってvalueの値は26になります。
・ビート演算子
ビート演算子は対象になる値を2進数で展開して各桁数を比較した結果を出す演算子です。
各演算子の説明は下記のようになります。
- &演算
対象1ビートと対象2のビートの中で、二つ全部値が1になっている桁に1を出します。
なので1番目と5番目の桁には1が出されます。
- |演算
対象1ビートと対象2のビートの中で、一つでも1になっている桁に1を出します。
なので1番、2番、3番、5番目の桁に1が出されます。
- ^演算
対象1ビートと対象2のビートの中で、一つだけ1になっている桁に1を出します。
なので2番と3番目の桁に1が出されます。
- ~演算
各ビートの数を反転させます。
なのですべての桁の値が反転され、結果が-20になります。
・比較演算子
比較演算子は二つの式または値を比較してその結果としてtrueまたはfalseを出す演算子です。
・論理演算子
論理演算子はいくつかのboolean値または比較式の結果を集めてtrueかfalseかを出す演算子です。
・条件演算子(三項演算子)
条件演算子は条件式の結果によって行う処理が異ならせる演算子です。
- 書き方
1 |
条件式 ? 処理1 : 処理2 |
上記の条件式の結果がtrueの場合、処理1が実行され、falseの場合には処理2が実行されます。
・代入演算子
代入演算子は変数に値を代入させる演算子です。
代入演算子は算術演算子、ビート演算子、シフト演算子と組み合わせて使えます。
終わりに
今回の記事は以上になります。
次回はJavaの条件分岐を学びましょう。
ご覧いただきありがとうございます。
コメント