C#のbool型を完全解説!初心者でもわかるtrueとfalseの基本と使い方
生徒
「先生、C#のプログラムで『はい』とか『いいえ』みたいな判断ってできますか?」
先生
「はい、C#では『bool型(ブール型)』という仕組みを使えば、それができますよ。」
生徒
「bool型ってなんですか? 難しそう…」
先生
「そんなことはありません。とてもシンプルな考え方なんですよ。一緒に基本から見ていきましょう!」
1. C#のbool型(ブール型)とは?
bool型(読み方:ブールがた)は、C#(シーシャープ)というプログラミング言語で使われる真偽値(しんぎち)のデータ型です。
「真偽値」とは、「正しいか」「間違っているか」、つまり「true(真)」か「false(偽)」のどちらかを表す値のことです。
もっと身近な言葉で言えば、「はい(true)」か「いいえ(false)」のような2択の情報を扱うときに使います。
たとえば、「今、お腹がすいている?」という質問に対して「はい」ならtrue
、「いいえ」ならfalse
と表します。
2. bool型の基本的な書き方と使い方
実際にC#でbool型
の変数を使う基本的な書き方を見てみましょう。
bool isHungry = true;
if (isHungry)
{
Console.WriteLine("ご飯を食べましょう!");
}
このコードでは、「isHungry(お腹がすいているか)」というbool型
の変数を作り、その値をtrue
にしています。
if
文は「もし〜なら」という意味で、isHungry
がtrue
の場合にConsole.WriteLine
の中が実行されます。
ご飯を食べましょう!
3. trueとfalseは小文字で書こう
trueとfalseは、C#ではすべて小文字で書きます。
たとえば、True
やFALSE
のように書くと、C#ではエラーになります。
正しくは次のように書きます:
bool isSleeping = false;
4. 条件式にもbool型は使われる
if
文の中でよく使われる「条件式」も、bool型
の値を扱います。
たとえば、数字の比較も結果はbool型
になります。
int age = 20;
bool isAdult = age >= 18;
if (isAdult)
{
Console.WriteLine("大人です。");
}
大人です。
age >= 18
という比較式は、20が18以上かどうかを判断します。その結果はtrue
になり、isAdult
に代入されます。
5. bool型を使ったよくある間違い
初心者の方がbool型
を使うときによくある間違いを紹介します。
間違い1:文字列の "true" を使ってしまう
次のコードは間違いです:
bool isValid = "true"; // エラーになります!
"true"
は文字列であって、bool型
ではありません。
正しくは:
bool isValid = true; // 小文字のtrue
間違い2:条件式に数値を使う
次のようなコードもC#では使えません:
int x = 5;
if (x) // C言語ではOKだが、C#ではエラー
{
Console.WriteLine("実行される?");
}
C#では、if
文の条件に必ずbool型
が必要です。数値を直接条件として使うことはできません。
6. bool型はプログラムの判断の要
bool型
は、プログラムに「判断力」を与える大切なデータ型です。
たとえば、次のようなシーンで使われます:
- ログインしているかどうかを判定する(
isLoggedIn
) - ゲームでプレイヤーが生きているか(
isAlive
) - ネットに接続されているか(
isConnected
) - ボタンが押されたか(
isButtonPressed
)
これらすべて、true
かfalse
の2択で表現できます。
7. bool型の値を反転する(NOT演算子)
時には、true
をfalse
に、false
をtrue
に変えたいこともあります。
そのときは「NOT(ノット)演算子」という「!
」を使います。
bool isDark = true;
bool isBright = !isDark;
Console.WriteLine(isBright);
False
!isDark
は、true
の反対なのでfalse
になります。
8. 実践練習:自分でbool型を使ってみよう
実際に自分でもbool型
を使って、簡単なプログラムを書いてみましょう。
bool isRaining = true;
if (isRaining)
{
Console.WriteLine("傘を持って出かけましょう。");
}
else
{
Console.WriteLine("傘はいりませんね。");
}
傘を持って出かけましょう。
isRaining
の値によって、出力が変わります。true
とfalse
を切り替えて動きを確認してみましょう!