C# 可空类型学习笔记

可空类型的定义

在 C# 中,可空类型是一种特殊的类型,它允许变量接受 null 值。通常情况下,值类型的变量是不允许为 null 的,但使用可空类型时,这些变量也可以接受 null 值。

可空类型的语法

可空类型的语法如下所示:

csharpCopy Code
<数据类型>? <变量名> = null;

其中,问号 ? 表示这是一个可空类型的变量。

例如,声明一个可空类型的 int 变量,可以使用以下代码:

csharpCopy Code
int? num = null;

可空类型的实例

下面是使用可空类型的一个实例:

csharpCopy Code
using System; class Program { static void Main(string[] args) { int? num1 = null; int? num2 = 45; // 判断 num1 是否为 null if (num1.HasValue) { Console.WriteLine("num1 的值为:" + num1.Value); } else { Console.WriteLine("num1 为空!"); } // 判断 num2 是否为 null if (num2.HasValue) { Console.WriteLine("num2 的值为:" + num2.Value); } else { Console.WriteLine("num2 为空!"); } // 使用 ?? 运算符 int num3 = num1 ?? 0; int num4 = num2 ?? 0; Console.WriteLine("num3 的值为:" + num3); Console.WriteLine("num4 的值为:" + num4); Console.ReadKey(); } }

输出结果如下:

Copy Code
num1 为空! num2 的值为:45 num3 的值为:0 num4 的值为:45

在上面的代码中,我们声明了两个可空类型的 int 变量 num1 和 num2。然后,使用 HasValue 属性来判断这些变量是否为 null,如果不为 null,则使用 Value 属性来获取其值。

另外,我们还使用了 ?? 运算符来处理 num1 和 num2 变量的值,如果这些变量为 null,则将它们的值设置为 0。

总结

本篇学习笔记介绍了 C# 中的可空类型,包括可空类型的定义、语法和实例。通过学习,我们可以知道如何使用可空类型处理 null 值,提高代码的健壮性和安全性。