DecimalFormat舍入

mai*_*rgs 20 java floating-point decimal

这是一个小代码来说明我所看到的

float floater = 59.999f;

DecimalFormat df = new DecimalFormat("00.0");

System.out.println(df.format(floater));
Run Code Online (Sandbox Code Playgroud)

这打印:

60.0
Run Code Online (Sandbox Code Playgroud)

我想要打印

59.9
Run Code Online (Sandbox Code Playgroud)

我需要做什么?

Mic*_*rdt 31

在使用之前添加此行DecimalFormat:

df.setRoundingMode(RoundingMode.DOWN);
Run Code Online (Sandbox Code Playgroud)

看看其他的舍入模式,看看哪一个最适合你.

注意:此方法仅适用于JDK 1.6或更高版本