bool
型キーワードは、ブール値を表す .NET System.Boolean 構造体型のエイリアスであり、true
またはfalse
にすることができます。
bool
型の値を使用して論理演算を実行するには、ブール論理演算子を使用します。
bool
型は、比較演算子と等値演算子の結果の型です。
bool
式は、if、do、while、for ステートメント、および条件演算子?:
の制御条件式にすることができます。
bool
型の既定値はfalse
。
リテラル
true
およびfalse
リテラルを使用して、bool
変数を初期化したり、bool
値を渡すことができます。
bool check = true;
Console.WriteLine(check ? "Checked" : "Not checked"); // output: Checked
Console.WriteLine(false ? "Checked" : "Not checked"); // output: Not checked
3 値のブール型ロジック
たとえば、3 つの値を持つブール型をサポートするデータベースを操作する場合など、3 つの値を持つロジックをサポートする必要がある場合は、null 許容の bool?
型を使用します。
bool?
オペランドの場合、定義済みの&
演算子と|
演算子は、3 つの値を持つロジックをサポートします。 詳細については、「Boolean logical operators (ブール論理演算子)」記事の「Nullable Boolean logical operators (null 許容論理演算子)」セクションを参照してください。
null 許容値型の詳細については、「 Null 許容値型」を参照してください。
コンバージョン
C# では、 bool
型を含む 2 つの変換のみが提供されます。 これらは、対応する null 許容 bool?
型への暗黙的な変換と、 bool?
型からの明示的な変換です。 ただし、.NET には、 bool
型との間で変換するために使用できる追加のメソッドが用意されています。 詳細については、「System.Boolean API リファレンス」ページの「ブール値との間の変換」セクションを参照してください。
C# 言語仕様
詳細については、C# 言語仕様の bool 型のセクションを参照してください。
こちらも参照ください
.NET