Выдаёт ошибку при сравнении полученной строки "String b" с аналогичным значением:
@Test
public void test(){
String a = "1 000,00";
String b = new DecimalFormat("#,##0.00").format(1000); //1 000,00
Assert.assertEquals(a, b); //выдаёт ошибку, что значения отличаются
}
Лог ошибки:
org.junit.ComparisonFailure:
Expected :1 000,00
Actual :1 000,00
И также при использовании замены символов результат не меняется:
b = b.replaceAll("//s",""); //1 000,00
Нашёл вот такой способ:
Locale locale = new Locale("ru", "RU");
DecimalFormatSymbols symbols = new DecimalFormatSymbols(locale);
symbols.setGroupingSeparator(' ');
String b = new DecimalFormat("#,##0.00", symbols).format(1000); //1 000,00
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники