如何获得Double.toString()行为和千位分隔符?

时间:2010-08-31 03:12:56

标签: java format double separator

我想将千位分隔符添加到double类型的变量中。我尝试使用String.format("%,f", x);和类似的,但似乎有一个固定的小数位数,与Double.toString()不同。

例如,值为1234.5:

Double.toString():1234.5
String.format():1.234,500000
期望:1.234,5

1 个答案:

答案 0 :(得分:4)

NumberFormat类知道用于用户区域设置的小数点分隔符。

NumberFormat formatter = NumberFormat.getInstance();
String formattedDouble = formatter.format(1234.5);

如果这会给你太多的小数位,你可以使用setMaximumFractionDigits方法。