@evgenyt2000

Почему не работает сортировка StreamApi?

Добрый день !
Не работает сортировка
List<String> expectedOrderedByAscList = actualOrderedByAscList
                .stream()
                .sorted(Comparator.naturalOrder())
                .collect(Collectors.toList());


Этот вариант не корректен так как есть проблема со случаями,типа ааа ааb
Идёт по первой букве

У второго
List<String> expectedOrderedByAscList = actualOrderedByAscList
                    .stream()
                    .sorted((String s1,String s2)->{ return s1.compareTo(s2);})
                    .collect(Collectors.toList());


Он чтото не работает....
Если кто может подсказать/сказать в чём проблема ,тому спасибо!Большое

Возможно проблема тут
Использование list.sort(String::compareTo) или list.sort(Comparator.naturalOrder()) даст неверный (т. е. не алфавитные) результаты. Он будет сортировать любую букву верхнего регистра перед всеми строчными буквами, поэтому массив ["aAAA","Zzz", "zzz"] сортируется до ["Zzz", "aAAA", "zzz"]
  • Вопрос задан
  • 76 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Emphasoft Санкт-Петербург
от 200 000 до 400 000 ₽
от 140 000 до 230 000 ₽
от 150 000 до 400 000 ₽
01 мар. 2021, в 00:47
300000 руб./за проект
01 мар. 2021, в 00:29
5555 руб./за проект