Hallo,
ich fange gerade mit Java in Eclipse an und habe Google bereits nach einer Lösung bemüht. Dabei bin ich auf folgende Möglichkeit zum Runden auf 2 Dezimalstellen gekommen:
Mich würde nun interessieren, wieso hier verschiedene Ergenisse rauskommen:
Ergebnis: 36.8
Ergebnis: 36.800000000000004
Anscheinend ist ja 100*x = 3680 und es erscheint mir logisch, dass deswegen im ersten Fall die 0 weggelassen wird und ich über eine Formatierung die auch anzeigen lassen könnte, aber woher kommt im zweiten Fall die 4? Ich dachte, dass durch das Math.round diese vorher "abgehackt" wird.
Gruß
Hans
ich fange gerade mit Java in Eclipse an und habe Google bereits nach einer Lösung bemüht. Dabei bin ich auf folgende Möglichkeit zum Runden auf 2 Dezimalstellen gekommen:
Java:
x=Math.round(Variable*100)/100
Mich würde nun interessieren, wieso hier verschiedene Ergenisse rauskommen:
Java:
Math.round(x*100)/100.0;
Java:
Math.round(x*100)*0.01;
Anscheinend ist ja 100*x = 3680 und es erscheint mir logisch, dass deswegen im ersten Fall die 0 weggelassen wird und ich über eine Formatierung die auch anzeigen lassen könnte, aber woher kommt im zweiten Fall die 4? Ich dachte, dass durch das Math.round diese vorher "abgehackt" wird.
Gruß
Hans