当它为空时,是否可以检测到Nullable类型(转换为对象)?检测可空类型
由于Nullable<T>
是一个真正的结构,我认为它应该是可能的。
double? d = null;
var s = GetValue(d); //I want this to return "0" rather than ""
public string GetValue(object o)
{
if(o is double? && !((double?)o).HasValue) //Not working with null
return "0";
if(o == null)
return "";
return o.ToString();
}
如果接受'object'类型的参数的例程被传递了'Nullable'类型的变量,那么例程将接收到一个空对象引用(如果该变量为null)或者对' System.Double'(如果变量不是null)。它不会包含一个'Nullable '的实例。 –
supercat