日期:2014-05-18 浏览次数:20854 次
double i = double.NaN; Console.WriteLine(i == double.NaN); // False; Console.WriteLine(double.Equals(i, double.NaN)); // True;
------解决方案--------------------
Console.WriteLine("{0},{1}",i.GetHashCode(),double.NaN.GetHashCode()); Console.WriteLine(Equals(i, double.NaN));
------解决方案--------------------
http://www.msdn.net/library/chs/default.asp?url=/library/CHS/cpref/html/frlrfsystemdoubleclassnantopic.asp
NET Framework 类库
Double.NaN 字段
表示不是数字 (NaN) 的值。此字段为常数。
[Visual Basic]
Public Const NaN As Double
[C#]
public const double NaN;
[C++]
public: const double NaN;
[JScript]
public var NaN : double;
备注
此常数的值是零被零除所得到的结果。
当运算结果未定义时返回此常数。
使用 IsNaN 确定某个值是否不是数字。不可能通过将某个值与另一个等于 NaN 的值进行比较来确定该值是否不是数字。