让我们假设我有一个短定义的 getter setter 字段,如下所示:
public double MyDouble { get; set; }
我想检查这个 MyDouble 值是否已设置。我不能这样检查:
if(MyDouble == null) .... else ....
因为双变量不能得到空值。那么我如何检查这个值是否已设置?我是否必须使用第二个保持 isSet 状态的变量,或者 double 类型是否有任何默认值?
谢谢。
让我们假设我有一个短定义的 getter setter 字段,如下所示:
public double MyDouble { get; set; }
我想检查这个 MyDouble 值是否已设置。我不能这样检查:
if(MyDouble == null) .... else ....
因为双变量不能得到空值。那么我如何检查这个值是否已设置?我是否必须使用第二个保持 isSet 状态的变量,或者 double 类型是否有任何默认值?
谢谢。
我建议您使用可空值类型。可以为 null 的值类型可以设置为 null,因此您可以检查 double 是否具有 null 值:
double? myVal = null;
if(myVal==null)
Console.WriteLine("NULL DOUBLE ENCOUNTERED !");
double 的默认值为 0,但您可能希望在稍后阶段将此值设置为 0,因此检查 0 似乎不好。您可以做的是将其构造函数中的值设置为 -
MyDouble = Double.MinValue;
并检查你的二传手
if(MyDouble == Double.MinValue) .... else ....
Double.MinValue is -1.7976931348623157E+308
你不太可能在课堂上进行设置。