Wie vergleicht ich zwei Doppelwerte in Java?
Posted: 26 Aug 2025, 08:06
Ein einfacher Vergleich von zwei Doppelwerten in Java erzeugt einige Probleme. Betrachten wir das folgende einfache Code -Snippet in Java. < /P>
statt, da die Bewertung dieses Ausdrucks 0,999999999999999 beträgt, von dem tatsächlich erwartet wurde, dass er 1,0 beträgt, was nicht gleich 1.0 ist. Daher bewertet die Bedingung an boolean false . Was ist der beste und vorgeschlagene Weg, um eine solche Situation zu überwinden?
Code: Select all
package doublecomparision;
final public class DoubleComparision
{
public static void main(String[] args)
{
double a = 1.000001;
double b = 0.000001;
System.out.println("\n"+((a-b)==1.0));
}
}
< /code>
Der obige Code scheint true < /code> zurückzugeben, die Bewertung des Ausdrucks ((a-b) == 1.0) < /code>, aber nicht. Es gibt False