Итак, я только что узнал о Arrays.sort(arrayName);
и применил его в моем проекте, но я нашел его от самого низкого до самого высокого. Есть ли способ сделать это наоборот? (Я не думаю, что мне нужно опубликовать код, о котором идет речь, но если он понадобится, я отправлю его).Сортировка массива int от наивысшего до самого низкого
ответ
Если вы используете Integer[]
вместо int[]
, то вы можете передать Comparator
в качестве второго аргумента метода сортировки. Наложить обратный порядок, вы можете использовать Collections.reverseOrder()
метода:
Arrays.sort(arr, Collections.reverseOrder());
Отлично работает! Спасибо за помощь! – lukeb28
- использовать
Integer[]
вместоint[]
- Воспользоваться
Collections.reverseOrder()
: Возвращает компаратор, который налагает реверс естественного упорядочения на коллекции объектов, которые реализуют интерфейс Comparable Если возможно, используйте
ArrayList<Integer>
иCollections.sort(list, Collections.reverseOrder())
для более прочного случая.Integer[] intArr = new Integer[10]; // add some integer Arrays.sort(intArr, Collections.reverseOrder())
Если у вас есть int[]
массив, вы можете сортировать его с помощью Arrays.sort
, а затем повернуть его вспять:
int [] tab2 = new int[]{1,5,0,-2};
Arrays.sort(tab2);
ArrayUtils.reverse(tab2);
System.out.print(Arrays.toString(tab2));
Выход:
[5, 1, 0, -2]
Code
обратного метода (от org.apache.commons.lang.ArrayUtils.reverse(int[])
):
public static void reverse(int[] array) {
if (array == null) {
return;
}
int i = 0;
int j = array.length - 1;
int tmp;
while (j > i) {
tmp = array[j];
array[j] = array[i];
array[i] = tmp;
j--;
i++;
}
}
Для некоторых случаев использования вы можете прийти, просто обработав отсортированный массив как «обратный сортированный». Например. для итерации от наивысшего до самого низкого числа вы можете использовать
int[] foo = ...;
Arrays.sort(foo);
for (int i=foo.length-1; i>=0; i--) {
doSomethingWith(foo[i]);
}
Кажется, что больше кода, чем nessisary. – lukeb28
- 1. Сортировка таблицы лидеров от наивысшего до самого низкого
- 2. Начать выбор от наивысшего до самого низкого
- 3. Chart.js: scaleStartValue от наивысшего до самого низкого
- 4. Сортировка списка из Excel от наивысшего до самого низкого
- 5. сортировать множественные переменные int от наивысшего до самого низкого
- 6. Сортируйте случайные целые числа, сходящие от наивысшего до самого низкого, а не от самого низкого до самого высокого?
- 7. java расположение от самого низкого до наивысшего на входных значениях
- 8. bubblesort от наивысшего до самого низкого числа в java
- 9. Изменение строки чисел от наивысшего до самого низкого C#
- 10. сортировать список чисел от наивысшего до самого низкого
- 11. sql order by от наивысшего до самого низкого значения
- 12. Сортировка 5 сгенерированных чисел от самого низкого до самого высокого
- 13. Эхо-строка от наивысшего до самого низкого сходства
- 14. Как заказать по частоте от наивысшего до самого низкого
- 15. Обработка связей при ранжировании от наивысшего до самого низкого
- 16. Печать массива от самого низкого до самого высокого без сортировки
- 17. int [] array (сортировать от самого низкого до самого высокого)
- 18. Python, сортировка результатов в формате .txt от наивысшего до самого низкого
- 19. Сортировка как массива строк, так и двойного массива от наивысшего до самого низкого (параллельные массивы) и выравнивания текста
- 20. Сортировка ObservableList от высокого до низкого - javafx
- 21. Сортировка данных из cvv в алфавитном порядке, от наивысшего до самого низкого и среднего
- 22. Определение наивысшего и самого низкого числа (Java)
- 23. Капля наивысшего и самого низкого массива в Java
- 24. Сортировка массива вопроса (от низкого до высокого)
- 25. Сортировка STL-карты от самого низкого до наибольшего значения
- 26. Попытка упорядочить колонку с наивысшего частотного отсчета до самого низкого
- 27. Как получить ключи из массива, отсортированные от наивысшего до самого низкого значения в php?
- 28. Выбор Сортировка (от низкого до высокого) python
- 29. MySQL - цифры подстроки заказов от низкого до наивысшего
- 30. Как отсортировать массив от наивысшего до самого низкого с помощью метода swap?
Вы заметите, что существует еще один метод 'sort', который принимает' Comparator'. –
@SotiriosDelimanolis: не сортировать 'int []'. –
Прочтите это http://docs.oracle.com/javase/6/docs/api/java/util/Arrays.html#sort (T [], java.util.Comparator) – Prateek