如何将double格式化为字符串,以便它显示所有(无限制)小数位(如果它们在那里但不显示任何尾随0)?
答案 0 :(得分: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。