bool 关键字是
![]() |
---|
如果需要一个也可以有 null 值的布尔型变量,请使用 |
标识符
可将布尔值赋给 bool 变量。也可以将计算为 bool 类型的表达式赋给 bool 变量。
![]() | |
---|---|
// keyword_bool.cs using System; public class MyClass { static void Main() { bool i = true; char c = '0'; Console.WriteLine(i); i = false; Console.WriteLine(i); bool Alphabetic = (c > 64 && c < 123); Console.WriteLine(Alphabetic); } } |
输出
True False False |
转换
在 C++ 中,bool 类型的值可转换为 int 类型的值;也就是说,false 等效于零值,而 true 等效于非零值。在 C# 中,不存在 bool 类型与其他类型之间的相互转换。例如,下列 if 语句在 C# 中是非法的,而在 C++ 中则是合法的:
![]() | |
---|---|
int x = 123; if (x) // Invalid in C# { printf("The value of x is nonzero."); } |
若要测试 int 类型的变量,必须将该变量与一个值(例如零)进行显式比较,如下所示:
![]() | |
---|---|
int x = 123; if (x != 0) // The C# way { Console.Write("The value of x is nonzero."); } |
示例
在此例中,您从键盘输入一个字符,然后程序检查输入的字符是否是一个字母。如果输入的字符是字母,则程序检查是大写还是小写。这些检查是使用
![]() | |
---|---|
// keyword_bool_2.cs using System; public class BoolTest { static void Main() { Console.Write("Enter a character: "); char c = (char)Console.Read(); if (Char.IsLetter(c)) { if (Char.IsLower(c)) { Console.WriteLine("The character is lowercase."); } else { Console.WriteLine("The character is uppercase."); } } else { Console.WriteLine("Not an alphabetic character."); } } } |
输入
X |
示例输出
Enter a character: X The character is uppercase. Additional sample runs might look as follow: Enter a character: x The character is lowercase. Enter a character: 2 The character is not an alphabetic character. |
C# 语言规范
有关 bool 和相关主题的更多信息,请参见 C# 语言规范中的以下各节:
-
4.1.8 bool 类型
-
7.9.4 布尔相等运算符
-
7.11.1 布尔条件逻辑运算符
请参见
