将默认语言环境分隔符与NumberFormat一起使用,然后舍入数字

时间:2014-12-05 18:27:13

标签: java number-formatting decimalformat

我有这个Java代码:

  NumberFormat nf =  NumberFormat.getNumberInstance(Locale.getDefault());
  DecimalFormat df = (DecimalFormat)nf;
  newCurr = df.format(dCurr);

基本上,我传了一个数字,比如12.344。

我希望它舍入两个地方并使用Locale的默认分隔符("。"或",")。因此,例如在欧洲的一些国家,我希望这是12,34

到目前为止,上面的代码,我已经到了一半。我得到12,344。我无法找到放置DecimalFormat("#。##")的位置,因此可以舍入。

换句话说,我可以在上面加入DecimalFormat df=new DecimalFormat("#.##");吗?还是我必须找到另一种方式?

编辑:我想我必须采用(100.00 * var)/ 100.00的旧方式并将其传递出去?

1 个答案:

答案 0 :(得分:1)

方法setMaximumFractionDigit将完成工作。请参阅其他可用方法:http://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html#setMaximumFractionDigits%28int%29