@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"]
  • Вопрос задан
  • 120 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
Bell Integrator Ульяновск
До 400 000 ₽
Bell Integrator Ижевск
До 400 000 ₽
Bell Integrator Хабаровск
До 400 000 ₽
29 мар. 2024, в 12:47
300 руб./за проект
29 мар. 2024, в 12:21
10000 руб./за проект
29 мар. 2024, в 11:40
30000 руб./за проект