Ошибка при сравнении строк String при использовании DecimalFormat в одной из них

224
14 февраля 2018, 11:14

Выдаёт ошибку при сравнении полученной строки "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 
Answer 1

Нашёл вот такой способ:

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
READ ALSO
Медленно работает пул потоков ExecutorService

Медленно работает пул потоков ExecutorService

Использую библиотеку apache poi для транспонирования строк в Excel Пул потоков в разы медленнее работает, чем без ExecutorService, в чем может быть проблема?

175
Как решить с Ripple в Lolipop

Как решить с Ripple в Lolipop

Я хочу использовать визульаный эффект ripple в Андроид от 16 APIСтандартаня Ripple от гугла не подходит

194
столкновение шаров [требует правки]

столкновение шаров [требует правки]

как осуществить НЕЦЕНТРАЛЬНОЕ столкновение двух шаров на java Нужен именно метод с прописанными формулами так как все остальное есть

216
Перенос елементов в RecyclerView на новую строку

Перенос елементов в RecyclerView на новую строку

Есть андроид приложение со страничкой аккаунта, на которой есть RecyclerView, который в свою очередь содержит скиллы, которыми обладает пользователь

185