【超基本】「かつ」や「または」を表現するJavaの条件演算子の使い方

かつ または
  • このエントリーをはてなブックマークに追加
  • Pocket

「かつ」や「または」といった条件をプログラムに組み込むことはとても頻繁にある。Javaプログラミングでももちろん多用される。

ここで使われるのが条件演算子「&&」と「||」だ。このページでは条件演算子についてまとめたので、参考にして欲しい。

Javaの条件演算子の使い方

Javaの条件演算子は、条件の演算を行う演算子だ。

条件の演算は、条件を表す式の値を演算子のオペランドに与えて論理積や論理和などの演算を行い、結果をboolean型の値として生み出す。この時、オペランド(右と左の値)に与えられる式はboolean型である。

論理演算子と条件演算子は、boolean型の値に対して演算を行うので似ている。しかし、違いがある。条件演算子は、右の式が左の式の値によって、評価されないときがあるということだ。

なかなかわかりにくいと思うので、詳細は次のセクションを見ていただければと思う。

また、条件演算子を使うと、式を組み合わせていろいろな条件を作り出すことができる。複雑な条件を書くためにはどうしたらよいかもサンプルプログラムにある。

まずは、演算子の種類から見ていこう。

「かつ」と「または」を表す演算子の種類

条件演算子には、ふたつの種類がある。次のセクションでこれらのひとつひとつの演算子の詳細を説明している。

  • 条件演算子 &&
  • 条件演算子 ||

「かつ」を表す条件演算子 &&

演算子「&&」はBoolean型の値の論理積を求める。&&演算子の左と右にあるオペランドに対して演算が行われる。

書き方の基本は簡単だ。

演算結果 = オペランド1 && オペランド2;

  • オペランド1とオペランド2が両方ともtrueならば、演算結果はtrueとなる。
  • それ以外はfalseとなる。
  • オペランド1がfalseの場合、オペランド2は評価されない。

ここが違いになるが、はじめは深く考えなくていいだろう。とりあえず、少々違いはありつつも、ほとんど同じように動くと思っておけばいい。

下記のようにすると、20代以上の男性というのが表現出来る。

演算結果 = x > 20 && sex == "男性";

項目

オペランド1

true

true

false

false

オペランド2

true

false

true

false

演算結果

true

false

false

false

図で表すとこんな感じだ。

論理積

「または」を表す条件演算子 ||

演算子「||」は整数のビットの論理和を求める。||演算子の左と右にあるふたつのオペランドに対して演算が行われる。

書き方の基本は簡単だ。

演算結果 = オペランド1 || オペランド2;

オペランド1とオペランド2の論理和の演算結果は次のようになる。

  • オペランド1とオペランド2のどちらかがtrueならば、演算結果はtrueとなる。
  • それ以外はtrueとなる。
  • オペランド1がtrueの場合、オペランド2は評価されない。

例えば、20歳以下または女性というのを表現すると次のようになる。

演算結果 = x <= 20 || sex == "女性";

項目

オペランド1

true

true

false

false

オペランド2

true

false

true

false

演算結果

true

true

true

false

論理和

条件演算子のサンプルプログラム

このサンプルプログラムは、ふたつのオペランドに基本的なboolean型の値の組み合わせを設定したとき、条件演算子からどんな演算結果が得られるかを表示している。実際のコードで、条件演算子の書き方と演算結果を確かめよう。

実行結果

このような結果になる。

二つの式を持つ条件演算子のサンプルプログラム

このサンプルプログラムは、ふたつの式を組み合わせて新しい条件を作り出す方法を示している。実際のコードで、式の組み合わせ方を見てみよう。

実行結果

サンプルプログラムの説明

それでは簡単にプログラムの解説をしてゆこう。

  • [1] 変数value1を宣言し、2を代入する。
  • [2] 変数value2を宣言し、7を代入する。
  • [3] 変数resultを宣言する。
  • [4] resultに (value1 == 2) && (value2 == 7)を代入する。
  • [5] resultを表示する。
  • [6] resultに(value1 == 2) && (value2 == 3)を代入する。
  • [7] resultを表示する。
  • [8] resultに(value1 == 2) || (value2 == 3)を代入する。
  • [9] resultを表示する。
  • [10] resultに(value1 == 1) || (value2 == 3)を代入する。
  • [11] resultを表示する。

複雑な条件演算子のサンプルプログラム

このサンプルプログラムは、お母さんと子供の年齢が設定された条件に入っているかどうかを検査している。条件が条件演算子と括弧を使ってちょっと複雑に組み合わせられている。実際のコードで確認してみよう。

実行結果

サンプルプログラムの説明

それでは簡単にプログラムの解説をしてゆこう。

  • [1] 変数ageOfMotherを宣言し、25を代入する。
  • [2] 変数ageOfChildを宣言し、4を代入する。
  • [3] 変数resultを宣言する。
  • [4] resultに(ageOfMother == 20) && (ageOfChild >= 7) && (ageOfChild <= 12)を代入する。
  • [5] resultを表示する。
  • [6] resultに(ageOfMother == 25) && ((ageOfChild == 4) || (ageOfChild == 5))を代入する。
  • [7] resultを表示する。

まとめ

このページでは「かつ」と「または」を表す条件演算子「&&」と「||」についてまとめてお伝えした。

本当によく使うので、必ず覚えてしまおう。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できます。

IT講師に興味はありませんか?

・「今までIT講師をやってきたが、更に多くの講義を行いたい」

・「エンジニアとしてやってきたが講師業に魅力を感じている」

・「講師として活躍するためにベースとなる知識を知りたい」

・「様々な分野や言語の講師にチャレンジしてみたい」


という方はぜひIT講師募集のページをご覧ください。


リスキルテクノロジーでは「受講している方々にITを好きになってもらう」ことを目標に、同じ目標に向かって歩んで行ける講師の方を常に探しています。


システム開発やインフラ構築などのエンジニアリング経験を活かし、新入社員などの未経験者や経験の浅い初学者の方々に対してITトレーニングを行っていただくことになります。


テキストやカリキュラムは事前に用意されており、それらを元に講義を進めていくため、IT講師をはじめて実施する方でも安心してトレーニングを実施できます。


IT講師募集のページを見る

SNSでもご購読できます。

コメントを残す

*

未経験からの育成制度も充実
IT講師に興味はありませんか?

リスキルテクノロジーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する