Java 将Double解析为特定格式
我想将Double值解析为特定格式。我不想把它当作一根绳子。 我正在努力Java 将Double解析为特定格式,java,format,number-formatting,Java,Format,Number Formatting,我想将Double值解析为特定格式。我不想把它当作一根绳子。 我正在努力 DecimalFormat format3DigitsAfterDecimal = new DecimalFormat("#0.000"); double d = 57; Double.parseDouble(format3DigitsAfterDecimal.format(d)); 这将返回57.0,我希望57.000通过format方法以双精度返回。 我可能问错问题了吗 double没有特定的格式 获取双倍值5
DecimalFormat format3DigitsAfterDecimal = new DecimalFormat("#0.000");
double d = 57;
Double.parseDouble(format3DigitsAfterDecimal.format(d));
这将返回57.0
,我希望57.000
通过format方法以双精度返回。
我可能问错问题了吗 double没有特定的格式 获取双倍值57.0或57.000对于计算机是相同的,但对于用户则不同。 作为一个人,你读的不是Double,而是Double的字符串表示 如果您希望以3位小数显示双精度,则必须使用
DecimalFormat
double d = 57.0;
NumberFormat numFormat = NumberFormat.getInstance();
numFormat.setMaximumFractionDigits(3);
numFormat.setMinimumFractionDigits(3);
System.out.println(numFormat.format(d));
您不能更改小数的值,但可以使用NumberFormat通过设置最小和最大小数位数来显示小数点后三位,如上面的示例所示 您可以获得一个类似于
57.0
的双精度字符串,也可以将其格式化为类似于57.000
的字符串。最后没有区别,但是字符串表示允许您格式化double。