如何在不将其转换为字符串类型的情况下格式化双精度数

How to format a double without converting it into string type

我想要

这样的值
1,
1.0,
0 

将格式化为

1.00,
1.00,
0.00

我正在使用以下代码,

Double stringToNumber=Double.parseDouble("3");
DecimalFormat toTheFormat = new DecimalFormat("0.00");
toTheFormat.format(stringToNumber)

.format returns 一个字符串,如果我使用 Double.parseDouble() 方法解析。

我失去了精度,即 3.00 变成 3.0 again.How 来解决这个问题?

这行得通吗?我做了修改

    public class Tester {
    public static void main (String[] args) {
        double d = 1;
        NumberFormat numFormat = NumberFormat.getInstance();
        numFormat.setMaximumFractionDigits(3);
        numFormat.setMinimumFractionDigits(2);
        System.out.println(numFormat.format(d));
    }
}