У меня есть целые числа, и я хотел бы отсортировать все четные числа перед всеми нечетными в порядке возрастания и сохранить порядок шансов. Я почти уверен, что смогу добиться этого с помощью коллекторов и/или последующих коллекторов, но не знаю, как это сделать. Я хотел бы знать, как мне отсортировать ложный список, чтобы, если возможно, добиться его в одной строке. Итак, после группировки по я хочу, чтобы ложный список был отсортирован по возрастанию, а другой (истинный список шансов) остался прежним, и после этого преобразования можно было бы плоско отобразить их в один список.Пример
Ввод:
1 6 2 3 4 5
Map collect = Arrays
.stream(bf.readLine().split("\\s+"))
.map(Integer::parseInt)
.collect(Collectors.groupingBy(integer -> integer % 2 != 0));
System.out.println(collect);
Вывод приведенного выше кода:
{false=[6, 2, 4], true=[1, 3, 5]}
Эта строка записей должна выглядеть так:
{false=[2, 4, 6], true=[1, 3, 5]}
после преобразования.
На выходе должны быть четы, которые должны идти перед коэффициентами, сортироваться по возрастанию и сохранять порядок коэффициентов. в то же время вот так:
2 4 6 1 3 5
Подробнее здесь: https://stackoverflow.com/questions/673 ... mber-order
Сортировка четных чисел по возрастанию, затем нечетных чисел, сохраняя порядок нечетных чисел. ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Я написал код для разделения четных и нечетных чисел, но столкнулся с этой ошибкой?
Anonymous » » в форуме Python - 0 Ответы
- 30 Просмотры
-
Последнее сообщение Anonymous
-
-
-
DataView.Sort — больше, чем просто по возрастанию/убыванию (нужна пользовательская сортировка)
Anonymous » » в форуме C# - 0 Ответы
- 52 Просмотры
-
Последнее сообщение Anonymous
-