您的位置:首页 > 编程语言 > C#

值类型后面加问号

2016-04-15 22:53 239 查看
看下面代码:

public int? _num;

我们都知道引用类型可以空,比如:
string str = null;但如果你讲值类型赋为空
int Number = null;此时编译器会报错,此时如果你在类型加上?
int? Number = null;
此时错误消失,表示Number可以赋为空。
所以值类型后面加问号表示可为空Null(Nullable结构)

Nullable是.NET 2.0中新提供的一种用于标明一个值类型是否可以为空的技术。 

可以使用GetValueOrDefault获取值,如果为空返回值类型默认值int? Number =null;
int t= Number.GetValueOrDefault();通过HasValue判断是否有值
bool have = Number.HasValue;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c#