13

有没有办法在java中拆分一个双数,以便所有3位数字组都用空格分隔,并且逗号后只出现2位数字?用逗号将它们分开很容易:

DecimalFormat df = new DecimalFormat("###,###.00");
df.format(number);

所以这235235.234变成了234,234.23

我需要的是234 234.23

我怎样才能做到这一点?

4

1 回答 1

28

我相信您的格式字符串中的逗号并不是真正的逗号 - 它只是DecimalFormatSymbols您正在使用的分组符号。

试试这个:

// TODO: Consider specifying a locale
DecimalFormatSymbols symbols = new DecimalFormatSymbols();
symbols.setGroupingSeparator(' ');
DecimalFormat df = new DecimalFormat("###,###.00", symbols);

或者作为最后一行的替代:

DecimalFormat df = new DecimalFormat();
df.setDecimalFormatSymbols(symbols);
df.setGroupingSize(3);
df.setMaximumFractionDigits(2);
于 2012-08-14T07:19:05.533 回答