在java中,按3组拆分带有空格的数字
有没有办法在java中拆分双精度数,以便所有3位数字组都用空格拆分,并且逗号后仅出现2位数字?用逗号分隔它们很容易:
DecimalFormat df = new DecimalFormat("###,###.00");
df.format(number);
所以这变成了235235.234
234,234.23
我需要的是234 234.23
我该怎么做?
有没有办法在java中拆分双精度数,以便所有3位数字组都用空格拆分,并且逗号后仅出现2位数字?用逗号分隔它们很容易:
DecimalFormat df = new DecimalFormat("###,###.00");
df.format(number);
所以这变成了235235.234
234,234.23
我需要的是234 234.23
我该怎么做?
我相信格式字符串中的逗号并不是真正的逗号 - 它只是您正在使用的分组符号。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);