Duplicar posibles:
Why does Double.NaN==Double.NaN return false?NaN magia constante en Java
NaN = "NaN" significa "no es un número". "Nan" se produce si una operación de coma flotante tiene algunos parámetros de entrada que hacen que la operación produzca un resultado indefinido. Por ejemplo, 0.0 dividido por 0.0 es aritméticamente indefinido. Tomar la raíz cuadrada de un número negativo tampoco está definido.
yo estaba tratando de utilizar NaN constante en 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);
}
}
salida
false
x=NaN
y=NaN
Entonces, ¿por x == y es falsa?
Eche un vistazo a http://stackoverflow.com/a/471314/751634 –
O más directamente, http://stackoverflow.com/questions/8819738/why-does-double-nan-double-nan-return -falso. – AerandiR
Gracias @ jenoosia, Esto es lo que estaba buscando –