十进制格式舍入
2022-09-02 01:10:59
这是一个小代码来说明我所看到的
float floater = 59.999f;
DecimalFormat df = new DecimalFormat("00.0");
System.out.println(df.format(floater));
这打印:
60.0
我想打印
59.9
我需要做什么?
这是一个小代码来说明我所看到的
float floater = 59.999f;
DecimalFormat df = new DecimalFormat("00.0");
System.out.println(df.format(floater));
这打印:
60.0
我想打印
59.9
我需要做什么?
在使用之前添加此行:DecimalFormat
df.setRoundingMode(RoundingMode.DOWN);
看看其他舍入模式,看看哪一个最适合你。
注意:此方法仅适用于 JDK 1.6 或更高版本
float d = 59.999f;
BigDecimal bd = new BigDecimal(d);
// Use the returned value from setScale, as it doesn't modify the caller.
bd = bd.setScale(1, BigDecimal.ROUND_FLOOR);
String formatted = bd.toString();