Heim >Java >javaLernprogramm >Wie kann man in Java konsistent auf zwei Dezimalstellen runden?
Wie rundet man in Java auf zwei Dezimalstellen auf?
Diese Frage wurde ausführlich auf StackOverflow diskutiert. Viele der vorgeschlagenen Lösungen haben sich jedoch als unwirksam erwiesen. In diesem Artikel wird eine Lösung vorgestellt, die Werte konsistent auf zwei Dezimalstellen rundet.
Der herkömmliche Ansatz, Math.round() zu verwenden, ist unzureichend, da er die Zahl abschneidet, anstatt sie aufzurunden. Um dies zu umgehen, sollte der Code wie folgt geändert werden:
double a = 123.13698; double roundOff = Math.round(a * 100.0) / 100.0; System.out.println(roundOff);
Diese Lösung nutzt Typumwandlung, um das ganzzahlige Ergebnis von Math.round() in ein Double umzuwandeln. Dadurch wird der Endwert je nach Wunsch auf zwei Nachkommastellen aufgerundet. Ein alternativer Ansatz ist:
double roundOff = (double) Math.round(a * 100) / 100;
Beide Methoden erzeugen die gewünschte Ausgabe von 123,14. Es ist wichtig zu beachten, dass sowohl Eingabe als auch Ausgabe doppelt sein müssen, damit die Rundung korrekt funktioniert.
Das obige ist der detaillierte Inhalt vonWie kann man in Java konsistent auf zwei Dezimalstellen runden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!