C#教程

bool数据类型

bool类型的值只有两种,分别是true和false。它对应.NET中的System.Boolean。在这个值类型的内部,其实定义了两个int类型的值分别表示true和false,另外,还定义了它的字符串形式。

internal const int True = 1;

internal const int False = 0;

[__DynamicallyInvokable]
public static readonly string TrueString = "True";

[__DynamicallyInvokable]
public static readonly string FalseString = "False";

声明和初始化

bool state = true;

将state变量声明为bool型,同时初始化一个true。

虽然0表示false,1表示true,但是我们不能直接将0或1赋值给一个bool类型的变量,它会报下面的错误,例如,我们定义如下:bool b = 1;

错误提示

错误 CS0029 无法将类型“int”隐式转换为“bool”

也并非不能实现int类型与bool类型的转换。参考如下的例子:

internal class Program
{
    static void Main(string[] args)
    {
        bool state = true;

        Console.WriteLine($"state={state}");
        Console.WriteLine($"FalseString={bool.FalseString}");
        Console.WriteLine($"TrueString ={bool.TrueString}");

        int a = 0;
        bool b = Convert.ToBoolean(a);
        Console.WriteLine($"将int类型的{a}转化为bool类型的{b}");

        a = 1;
        b = Convert.ToBoolean(a);
        Console.WriteLine($"将int类型的{a}转化为bool类型的{b}");

        a = 2;
        b = Convert.ToBoolean(a);
        Console.WriteLine($"将int类型的{a}转化为bool类型的{b}");

        a = -1;
        b = Convert.ToBoolean(a);
        Console.WriteLine($"将int类型的{a}转化为bool类型的{b}");

        var v = Console.ReadKey();
    }
}

输出如下:

state=True
FalseString=False
TrueString =True
将int类型的0转化为bool类型的False
将int类型的1转化为bool类型的True
将int类型的2转化为bool类型的True
将int类型的-1转化为bool类型的True

我们可以利用Convert.ToBoolean()函数实现int向bool的转换,并且得出结论,0表示false,非0表示true。bool类型的变量通常用在判断语句中,根据不同的状态执行不同的业务流程。

当前课程源码下载:(注明:本站所有源代码请按标题搜索)

文件名:004-《bool数据类型》源代码
链接:https://pan.baidu.com/s/1Bq2lX7cruUbklLwgjGggSw
提取码:byte

——重庆教主 2023年12月25日

copyright @重庆教主 C#中文网 联系站长:(QQ)23611316 (微信)movieclip (QQ群).NET小白课堂:864486030 | 本文由C#中文网原创发布,谢绝转载 渝ICP备2023009518号-1