Fließkommazahlen mit Java runden: Unterschied zwischen den Versionen

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen
K
K
Zeile 4: Zeile 4:
 
=String#format()=
 
=String#format()=
 
<code=java>
 
<code=java>
Double myDouble = 123.456;
+
import java.util.Locale;
double d = Double.parseDouble(String.format(Locale.GERMAN, "%1.2f", myDouble));</code=java>
+
 
 +
public class StringFormat {
 +
  public static void main(String[] args) {
 +
      Double myDouble = 123.456;
 +
      System.out.println(myDouble+" gerundet: "+String.format("%1.2f", myDouble));
 +
  }
 +
}
 +
</code=java>
 +
Möchte man bspw. das englische oder französische Zahlenformat ausgeben, muss noch ein passendes {{JAPI|Locale}} als erster Parameter der format()-[[Methode]] übergeben werden.<br>
 +
Ansonsten wird das von der JRE erkannte Locale des Betriebssystems verwendet.
  
 
=NumberFormat=
 
=NumberFormat=

Version vom 7. Februar 2018, 18:26 Uhr


String#format()

<code=java> import java.util.Locale;

public class StringFormat {

  public static void main(String[] args) {
     Double myDouble = 123.456;
     System.out.println(myDouble+" gerundet: "+String.format("%1.2f", myDouble));
  }

} </code=java> Möchte man bspw. das englische oder französische Zahlenformat ausgeben, muss noch ein passendes Locale als erster Parameter der format()-Methode übergeben werden.
Ansonsten wird das von der JRE erkannte Locale des Betriebssystems verwendet.

NumberFormat

Auch relativ einfach ist das Runden von Fließkommazahlen mit NumberFormat.

Dazu haben wir bereits einen Abschnitt im Artikel NumberFormat gewidmet.