恆魔術可能重複:
Why does Double.NaN==Double.NaN return false?楠的Java
NaN的 = 「南」 代表 「不是一個數字」。如果浮點操作有一些輸入參數導致操作產生一些未定義的結果,則產生「Nan」。例如,0.0除以0.0在算術上是未定義的。取一個負數的平方根也是不明確的。
我試圖用楠的Java
public class NaNDemo {
public static void main(String s[]) {
double x = Double.NaN;
double y = Double.NaN;
System.out.println((x == y));
System.out.println("x=" + x);
System.out.println("y=" + y);
}
}
輸出
false
x=NaN
y=NaN
那麼,爲什麼X == y是假的常量?
看看http://stackoverflow.com/a/471314/751634 –
或更直接地,http://stackoverflow.com/questions/8819738/why-does-double-nan-double-nan-return -假。 – AerandiR
謝謝@ jenoosia,這就是我正在尋找的 –