可空类型
C# 提供了一个特殊的数据类型, nullable 类型 (可空类型), 可空类型可以表示其基础值类型正常范围内的值, 再加上一个 null 值. 在处理数据库和其他包含可能未赋值的元素的数据类型时, 将 null 赋值给数值类型或布尔型的功能特别有用.
? : 单问号用于对 int,double,bool 等无法直接赋值为 null 的数据类型进行 null 的赋值, 意思是这个数据类型是 NullAble 类型的.
int? i =1; 等同于:
- Nullable<int> i = new Nullable<int>(3);
- int a; // 默认值为 0
- int? b; // 默认值为 null
??: 双问号可用于判断一个变量在为 null 时返回一个指定的值.
- string str = null;
- string str1 = str ?? "kkk"; // 如果问号左边的变量是空值, 则赋予右边的值.
- C# 中的?
来源: http://www.bubuko.com/infodetail-3224432.html