Warum können wir nicht '==' verwenden, um zwei Gleitkomma- oder Doppelnummern zu vergleichen [duplizieren]
Diese Frage hat hier bereits eine Antwort:
Test für Gleitkomma-Gleichheit. (FE_FLOATING_POINT_EQUALITY) 3 AntwortenWarum gibt Double.NaN == Double.NaN false zurück? 9 answersIch lese Effective Java von Joshua Bloch und inArtikel 8: Befolgen Sie den allgemeinen Vertrag, wenn das Überschreiben gleich @ is, diese Aussage ist geschrieben
Verwenden Sie für Float-Felder die Methode Float.compare. Verwenden Sie für doppelte Felder Double.compare. Die spezielle Behandlung von Float- und Doppelfeldern wird durch die Existenz von Float.NaN, -0.0f und den analogen Doppelkonstanten notwendig;
Kann mir jemand mit einem Beispiel erklären, warum wir @ nicht verwenden könn==
für Float oder Doppelvergleich