在C#1.x,一个值类型变量是不可以被赋予null值的,否则会产生异常。
在C#2.0中,提供了Nullable类型,允许用它定义包含null值(即空值)的数据类型,这对处理数据库中包含可选字段以及很多方面都有帮助。
定义一个nullable类型,使用类型修饰符“?”;
比如定义一个整型如下:
int myInt = 1;
要使一个整型变量可以存储一个null值,可以如下声明:
int? myNullableInt= 1;
这两个变量看起来似乎是一样的。但事实并非如此。实际上Nullable类型是一个结构体,它有两个公开可读字段:HasValue和Value。 HasValue是一个布尔值,当有值存储时它为真,当变量值为null时HasValue为假。当HavValue为真是时,可以取得变量的值;为假时,当尝试取得变量的值时会抛出一个异常。
看一下示例;
using System; class Demo { static void Main(string[] args){ int? num1; int? num2 = 123; num1 = null; double? num3 = null; double? num4 = 3.1415926; Console.WriteLine("num1 = {0} \r\n num2 = {1} \r\n num3 = {2} \r\n num4 = {3}", num1, num2, num3, num4); Console.ReadLine(); } }
到此这篇关于C# Nullable的使用小结的文章就介绍到这了,更多相关C# Nullable内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!