在C#中,可空类型(Nullable Types)是一种特殊的数据类型,它允许变量存储正常值或null。通常,值类型(如 int, double, DateTime 等)不能存储 null 值,但可空类型的引入使得这种情况成为可能。

以下是一个简单的例子,演示了如何声明和使用可空类型:
using System;

class Program
{
    static void Main()
    {
        // 声明可空整数
        int? nullableInt = null;

        if (nullableInt.HasValue)
        {
            Console.WriteLine("可空整数的值:" + nullableInt.Value);
        }
        else
        {
            Console.WriteLine("可空整数为null");
        }

        // 使用 null 合并运算符(null coalescing operator)获取默认值
        int result = nullableInt ?? 42;
        Console.WriteLine("结果:" + result);
    }
}

在上述示例中,int? 表示一个可空整数。nullableInt 被初始化为 null,并且通过 HasValue 属性检查它是否有值。可以使用 Value 属性来获取可空类型的实际值,但在使用之前最好先检查 HasValue,以防止 null 引发异常。

另外,使用 null 合并运算符 ?? 可以方便地提供默认值,当可空类型为 null 时,就使用右侧的默认值。

可空类型对于数据库中的字段、用户输入以及其他可能包含缺失值的情况非常有用。


转载请注明出处:http://www.zyzy.cn/article/detail/14753/C#