C#2.0中的可空类型Nullable

1、可空类型是针对值类型来说的,引用类型不能使用这种用法,因为引用类型已经可以赋值为null了。
2、T?是System.Nullable的所写,两种写法是一样的。
3、对可空类型赋值时候和对值类型是一样的。除了null没有区别。
4、使用System.Nullable.GetValueOrDefault方法获得可空类型的值或者是它作为值类型时的默认值。
5、用HasValue和Value方法来取得可空类型的值,而不能把可空类型直接赋给值类型;如果可空类型是null时HasValue返回false,Value会抛出System.InvalidOperationException异常
6、当把为null的可空类型赋给值类型时,用 ?? 操作符来取得可空类型的默认值
7、可空类型不能嵌套,如:Nullable> n;
原文地址:https://www.cnblogs.com/asyuras/p/869061.html