Was kommt raus, wenn NaN mit einer Zahl verglichen wird?

Wie soll da zwei bei raus kommen? Meinst du false? 😀
Galileo Computing :: Java ist auch eine Insel – 12.2 Fließkommaarithmetik in Java
Alles hat seine Ordnung *

Außer für den Wert NaN ist auf allen Fließkommazahlen eine totale Ordnung definiert. Das heißt, sie lassen sich von der kleinsten Zahl bis zur größten aufzählen. Am Rand steht die negative Unendlichkeit, dann folgen die negativen Zahlen, negative Null, positive Null, positive Zahlen und positives Unendlich. Bleibt nur noch die einzige unsortierte Zahl NaN. Alle numerischen Vergleiche <, <=, >, >= mit der Java-NaN liefern false. Der Vergleich mit == ist false, wenn einer der Operanden NaN ist. != verhält sich umgekehrt, ist also true, wenn einer der Operanden NaN ist.

???:L:bahnhof:
 
Faszinierend finde ich, dass == ähnlich reagiert wie unsere Gerichte - vor denen sind auch nicht alle Gleichen gleich 🙂

Java:
System.out.println(Double.NaN == Double.NaN);
Output: false

Klar habe ich nichts anderes erwartet, aber ich wollte mich schon davon überzeugen.
 

Zurück
Oben