Knowledge Log

【Java】真偽値(boolean)とは?プログラミングの「分かれ道」をいっぽずつ理解しよう

denson
1

はじめに

みなさんどうも、おげんです。

これまで「整数」「小数」「文字」と、Javaで扱うさまざまな「型」についてお話ししてきました。

これらをマスターした皆さんは、もうJavaで色々なデータを扱えるようになっています。

でも、プログラムを書いていると、どうしてもやりたくなることがあります。

「もし〜だったら、この処理をする。そうでなければ、こっちをする」という「判断」です。

例えば、「もしテストが80点以上なら『合格』と表示する」「もしパスワードが合っていたら『ログイン』させる」といったことですね。

この「判断」の主役になるのが、今回紹介する boolean(真偽値:しんぎち) です。

カタカナや漢字で見ると難しそうですが、中身はとってもシンプル。

「イエスか、ノーか」の2種類しかありません。

独学時代の私は、「型が多すぎてこれ以上覚えられない!」と半べそをかいていましたが(笑)、このbooleanを理解したことで、プログラムが自分の意思で動いているような「分かれ道」の面白さを知ることができました。

今回は、このプログラミングの「思考の根っこ」になるbooleanについて、実体験を交えながら丁寧に紐解いていこうと思います。

この記事はこんな人におすすめ!
  • boolean(真偽値)という言葉を初めて聞いて、難しそうと感じている人
  • trueとfalse、結局どういう場面で使うのかピンときていない人
  • 「もし〜なら」という条件分岐の学習をこれから始める人
  • Javaの基本データ型をコンプリートして、基礎を完璧にしたい人
2

boolean(ブーリアン)ってなに?

「boolean(ブーリアン)」という名前、なんだか魔法の呪文みたいですよね(笑)。

プログラミングの世界では、これを「真偽値(しんぎち)」と呼びます。

今までの型との決定的な違いは、「値が2つしか存在しない」という点です。

  • true(真): 「その通り!」「YES」「正しい」
  • false(偽): 「違うよ!」「NO」「正しくない」

これだけです。123とか"おげん"といった自由な値は一切入りません。

日常生活にある boolean

実は、私たちの身の回りも boolean 的な考え方であふれています。

  • 電気のスイッチ: ついている(true)か、消えている(false)か。
  • お風呂の栓: 閉まっている(true)か、開いている(false)か。
  • 信号: 青(true:進める)か、赤(false:進めない)か。

このように、「AかBか、どっちの状態?」ということをコンピュータに伝えるための専用の型が boolean なんです。

独学時代の私の勘違い

当時の私は、「YES/NOだけで何ができるの?」と思っていました。

でも、実はプログラムのすごいところは、この「YESかNOか」を自分で判断して、動きを変えられるところにあります。

例えば、「年齢が20歳以上なら、お酒の販売ボタンを有効にする(true)」といった処理。

これはまさに、この boolean という型があるからこそ実現できることなんです。

3

どういう時に使うの?(比較演算子)

「値が true と false しかないのはわかった。でも、自分で boolean b = true; なんて手入力すること、あんまりなくない?」

独学時代の私はそう思っていました。

実は、boolean が本領を発揮するのは、何かを「比べた時」なんです。

int age = 25;
boolean isAdult = (age >= 20); // 「20以上かな?」と比べている
System.out.println(isAdult);

この時、(age >= 20) という部分で比較が行われ、結果として true が生まれます。

そして、その trueisAdult という変数に格納されるという仕組みです。

よく使う比較のルール(比較演算子)

Java君に「比べて!」とお願いする記号をいくつか紹介します。

比較した瞬間に「答え」が生まれている

比較といえば「if文(条件分岐)の中でしか使わないもの」と思われがちです。

しかし、実は比較をしたその瞬間に、Java君の頭の中では truefalse という「答え(データ)」が発生しています。

この感覚が掴めると、プログラムがただの文字の羅列ではなく、「一つひとつの判断の結果が積み重なって動いている」ということが見えてきます。

ただ、この「判断」をJava君にお願いする時には、絶対に間違えてはいけない「注意点」があるんです!

4

独学時代の私が混乱したポイント

booleanを扱っていると、どうしても避けて通れない「落とし穴」があります。

私も何度もこの穴に落ちて、コンパイルエラーという名の絶望を味わいました(笑)。

「=」が1つか、2つか

これ、プログラミング初心者あるあるの第1位ではないでしょうか。

  • age = 20; (右の値を左に入れる:代入)
  • age == 20; (左と右が同じか比べる:比較)

「同じ!」と言いたいときは、必ず = を2つ書く必要があります。 独学時代の私は、無意識に = を1つしか書かずに、「中身を書き換えてしまう」というミスを連発していました。

Java君からすれば「比べるのか、入れるのか、どっちかにして!」という気分だったんでしょうね。

「!」は「逆さま」の合図

もう一つ、私が初見で「えっ、何これ?」と戸惑ったのが !(びっくりマーク) です。

プログラミングの世界で !「否定(〜ではない)」という意味になります。

  • boolean isSunny = true; (晴れている)

! をつけるだけで、truefalse に、falsetrue にひっくり返ります。

「!(びっくり)」マークがつくことで意味が「逆さま」になる。なんだか「え、そうなの!?」と驚いているみたいで、一度覚えるとちょっと愛着が湧く記号です。

文字の “true” とは別物!

最後にこれも大事です。

String s = "true"; は、ただの「trueという文字」であって、booleanではありません。

5

まとめ:次は「もしも(if文)」の世界へ!

今回はJavaの「真偽値(boolean)」について解説しました。

最後に、大事なポイントを振り返ってみましょう。

  • booleanの値は true(真)か false(偽)の2つだけ!
  • 比較した瞬間に、Java君の頭の中では truefalse が生まれている
  • 「同じかな?」を比べるときは、=== を2つ書くのがルール
  • !(びっくりマーク)をつけると、意味が「逆さま」になる

最初は「型なんてどれでも同じじゃないの?」と思っていました。

しかし、こうして一つひとつを丁寧に紐解いていくうちに、Java君がなぜこんなに厳格にルールを決めているのかが少しずつ分かってきました。

データの種類を正しく選ぶことは、プログラムを安全に動かすための「第一歩」なんですね。

さて、この boolean をマスターしたことで、ついにプログラミングの醍醐味である「条件分岐(if文)」の世界へ進む準備が整いました。

「もし〜だったら、こう動く」。そんなプログラムの「知能」とも言える部分を、次回からまた学んでいきましょう!

4月からエンジニアとしての一歩を踏み出す私も、この基礎を武器に、現場で戦える力を身につけていこうと思います。

皆さんも、まずはこの4つの型を使いこなして、コードの世界を楽しんでくださいね。

一緒に頑張りましょう!

あわせて読みたい
【Java】データの種類を決める「型」とは?代表的な4つを分かりやすく解説
【Java】データの種類を決める「型」とは?代表的な4つを分かりやすく解説
【Java】どれを使えばいい?整数型(byte/short/int/long)の違いを徹底解説
【Java】どれを使えばいい?整数型(byte/short/int/long)の違いを徹底解説
【Java】小数型「float」と「double」の違いをいっぽずつ解説
【Java】小数型「float」と「double」の違いをいっぽずつ解説
【Java】文字型(char)と文字列(String)の違いを解説!使い分けのコツとは?
【Java】文字型(char)と文字列(String)の違いを解説!使い分けのコツとは?

ABOUT ME
おげん
おげん
駆け出しエンジニア
文系未経験からエンジニアになるために挑戦を開始したアラサー。転職活動を終え、2026年4月からIT企業で勤務予定。自分が学習で苦労した経験を『誰かのための道しるべ』として発信中。
記事URLをコピーしました