Runden mit DecimalFormat in Java

Sehen wir uns die folgenden Anweisungen in Java an.

<code>System.out.println(new DecimalFormat("0").format(2.4)); //returns 2

System.out.println(new DecimalFormat("0").format(2.5)); //returns 2  <---Concentrate here
System.out.println(Math.round(2.5));                    //returns 3

System.out.println(new DecimalFormat("0").format(2.6)); //returns 3
System.out.println(new DecimalFormat("0").format(3.5)); //returns 4
</code>

In den obigen Aussagen sind alle anderen Fälle außer den folgenden offensichtlich.

<code>System.out.println(new DecimalFormat("0").format(2.5));
</code>

Es sollte zurückkehren3 aber es kehrt zurück2. Wie?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage