Heim > Java > javaLernprogramm > Wie formatiere ich Gleitkommazahlen mit Dezimalgenauigkeit in Java?

Wie formatiere ich Gleitkommazahlen mit Dezimalgenauigkeit in Java?

Susan Sarandon
Freigeben: 2024-11-03 22:24:03
Original
969 Leute haben es durchsucht

How to Format Floats with Decimal Precision in Java?

Floatzahlen mit Dezimalgenauigkeit formatieren

Das Formatieren von Gleitkommazahlen auf eine bestimmte Anzahl von Dezimalstellen ist eine häufige Aufgabe in verschiedenen Programmierszenarien. Um dies zu erreichen, ist ein weit verbreiteter Ansatz die Verwendung der BigDecimal-Klasse in Java. Wenn der erwartete Rückgabetyp jedoch ein Float ist, kann die Verwendung von BigDecimal zu falschen Ergebnissen führen.

Im angegebenen Codebeispiel:

<code class="java">public static float Redondear(float pNumero, int pCantidadDecimales) {
    // the function is call with the values Redondear(625.3f, 2)
    BigDecimal value = new BigDecimal(pNumero);
    value = value.setScale(pCantidadDecimales, RoundingMode.HALF_EVEN); // here the value is correct (625.30)
    return value.floatValue(); // but here the values is 625.3
}</code>
Nach dem Login kopieren

Das Problem tritt beim Zurückkonvertieren des BigDecimal-Werts in a auf schweben. Zu diesem Zweck empfiehlt es sich, die Methode String.format wie folgt zu verwenden:

String.format("%.2f", floatValue);
Nach dem Login kopieren

Durch Angabe der gewünschten Anzahl an Dezimalstellen innerhalb des Formatbezeichners (%.2f) erhalten Sie einen formatierten String Darstellung des Float-Werts mit der angegebenen Genauigkeit. Beachten Sie, dass der Rückgabetyp in diesem Fall ein String ist.

Das obige ist der detaillierte Inhalt vonWie formatiere ich Gleitkommazahlen mit Dezimalgenauigkeit in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage