如何将双精度格式化为字符串,以便显示所有(无限制)小数位(如果它们存在但不显示任何尾随 0)?
问问题
232 次
1 回答
1
double x = ...;
DecimalFormat fmt = new DecimalFormat();
fmt.setMinimumFractionDigits(0);
fmt.setMaximumFractionDigits(Integer.MAX_VALUE);
System.out.println(fmt.format(x));
Integer.MAX_VALUE 是一个愚蠢的数字,但任何足够大的数字都可以,正如您从 setMaximumFractionDigits javadoc 中看到的那样:
设置数字的小数部分允许的最大位数。对于除 BigInteger 和 BigDecimal 对象以外的格式化数字,使用 newValue 和 340 中的较低值。负输入值替换为 0。
于 2012-11-01T16:15:42.887 回答