Разделение цифр с пробелами по группам из 3 в java

есть ли способ разделить двойное число в java так, чтобы все группы из 3 цифр были разделены пробелом и только 2 цифры после появления запятой? Их легко разделить запятыми:

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

, так что 235235.234 превращается в 234,234.23

мне нужно 234 234.23

как я могу это сделать?

1 ответов


Я считаю, что запятая в строке формата не действительно запятая-это просто символ группировки в 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);