C# 中,布尔值(Boolean) 是 bool 类型的变量,它只接受两个值:true 或 false。布尔值用于控制程序的逻辑流程,如 if 语句、循环和逻辑运算。布尔值是 C# 编程中的核心概念,掌握它可以更好地控制程序逻辑。本文主要介绍布尔值(Boolean)的使用,bool与Boolean的区别,以及相关的示例代码。

1、C# 布尔值

通常,在编程中,将需要一个只能具有两个值之一的数据类型,表示逻辑判断条件的真假。

为此,C#具有bool数据类型,该数据类型可以是值truefalsebool 类型的默认值为 false

2、bool变量声明

布尔类型使用bool关键字声明,并且只能是truefalse

例如,

bool iscjavapyFun = true;
bool isFishTasty = false;
Console.WriteLine(iscjavapyFun);     // 输出 true
Console.WriteLine(isFishTasty);      // 输出 false

3、布尔表达式

布尔表达式是返回布尔值的C# 表达式:truefalse

可以使用比较运算符,例如,大于(> )运算符来查找表达式(或变量)是否为真:

例如,

int x = 10;
int y = 9;
Console.WriteLine(x > y); // 返回true,因为10比9大

例如,

Console.WriteLine(10 > 9); // 返回true,因为10比9大

在下面的示例中,我们使用等于(==)运算符来计算表达式:

例如,

int x = 10;
Console.WriteLine(x == 10); // 返回true,因为x的值等于10

例如,

Console.WriteLine(10 == 15); // 返回false,因为10不等于15

表达式的布尔值是所有C#比较和条件的基础。

4、bool与Boolean的区别

1) bool是基本数据类型,Boolean是它的封装类,和其他类一样,有属性有方法,可以new,例如,

Boolean flag = new Boolean();  // boolean 则不能

2) Boolean 是bool 的实例化对象类,例如,

bool b1 = true ; 
//或者
Boolean b2 = true ; 

5、布尔运算

布尔运算符可以用于对 bool 值进行逻辑运算,包括 &&(逻辑与)、||(逻辑或)和!(逻辑非)。

bool a = true;
bool b = false;

Console.WriteLine("a && b: " + (a && b)); // false
Console.WriteLine("a || b: " + (a || b)); // true
Console.WriteLine("!a: " + !a);           // false
Console.WriteLine("!b: " + !b);           // true

6、布尔值在条件语句中的应用

布尔值最常用于 if-else 语句和循环中。

1)在 if-else 语句中使用布尔值

bool isAdmin = true;

if (isAdmin)
{
    Console.WriteLine("Welcome, Admin!");
}
else
{
    Console.WriteLine("Access Denied.");
}

2)布尔值在 while 循环中

bool keepRunning = true;
int count = 0;

while (keepRunning)
{
    Console.WriteLine("Running... Count: " + count);
    count++;

    if (count >= 3)
    {
        keepRunning = false; // 退出循环
    }
}

7、布尔值的转换

C# 不可以直接将整数转换为布尔值,但可以使用比较运算符或 Convert.ToBoolean() 进行转换。

int number = 10;
bool isPositive = (number > 0); // 使用比较运算符

Console.WriteLine("Is number positive? " + isPositive);

bool fromInt = Convert.ToBoolean(1); // 任何非零数都转换为 true
bool fromZero = Convert.ToBoolean(0); // 0 转换为 false

Console.WriteLine("Convert.ToBoolean(1): " + fromInt);
Console.WriteLine("Convert.ToBoolean(0): " + fromZero);

8、布尔值的位运算(&|

&&|| 不同,&|位运算符,不会进行短路计算。&&||短路计算,如果左侧已确定结果,则右侧不会被计算。&|不会短路,无论左侧结果如何,右侧都会被计算。

bool a = false;
bool b = true;

Console.WriteLine("a & b: " + (a & b)); // False
Console.WriteLine("a | b: " + (a | b)); // True

推荐文档