Wie vergleicht ich zwei Doppelwerte in Java?

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Wie vergleicht ich zwei Doppelwerte in Java?

by Anonymous » 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>

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 
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?

Top