Как отсортировать ArrayList в Java в порядке убывания?

Как отсортировать ArrayList в Java в порядке убывания?

Вот один из способов для вашего list :

 Collections.sort(list); Collections.reverse(list); 

Или вы можете реализовать свой собственный Comparator для сортировки и устранения обратного шага:

 Collections.sort(list, new Comparator() { public int compare(Long o1, Long o2) { return o2.compareTo(o1); } }); 

Или еще проще использовать Collections.reverseOrder() поскольку вы только реверсируете:

 Collections.sort(list, Collections.reverseOrder()); 
 Comparator comparator = Collections.reverseOrder(); Collections.sort(arrayList, comparator); 

Вы можете использовать следующий код, который приведен ниже;

 Collections.sort(list, Collections.reverseOrder()); 

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

 Collections.sort(list, Collections.reverseOrder(new CustomComparator()); 

Где CustomComparator – class компаратора, который сравнивает объект, который присутствует в списке.

Java 8

хорошо сделать это в java 8 так весело и проще

 Collections.sort(variants,(a,b)->a.compareTo(b)); Collections.reverse(variants); 

Лямбда-выражения здесь рок!

в случае, если вам понадобилось более одной линейной логики для сравнения a и b, вы могли бы написать ее так:

 Collections.sort(variants,(a,b)->{ int result = a.compareTo(b); return result; }); 

Обычно сортируйте и используйте Collections.reverse();

Сортировка, затем обратная.

Более общий подход к реализации нашего собственного компаратора, как показано ниже

 Collections.sort(lst,new Comparator(){ public int compare(Long o1, Long o2) { return o2.compareTo(o1); } }); 

Следующий подход будет сортировать список в порядке убывания, а также обрабатывать значения « null », на всякий случай, если у вас есть нулевые значения, то Collections.sort () выкинет NullPointerException

  Collections.sort(list, new Comparator() { public int compare(Long o1, Long o2) { return o1==null?Integer.MAX_VALUE:o2==null?Integer.MIN_VALUE:o2.compareTo(o1); } }); 

Используя Collections.sort() с компаратором, который предоставляет порядок убывания. См. Javadoc для Collections.sort .

Вы также можете сортировать ArrayList с помощью TreeSet вместо comparator . Вот пример из вопроса, который у меня был ранее для целочисленного массива. Я использую «числа» в качестве имени-заполнителя для ArrayList .


  import.java.util.*; class MyClass{ public static void main(String[] args){ Scanner input = new Scanner(System.in); ArrayList numbers = new ArrayList(); TreeSet ts = new TreeSet(numbers); numbers = new ArrayList(ts); System.out.println("\nThe numbers in ascending order are:"); for(int i=0; i=0; i--) System.out.print(numbers.get(i).intValue()+" "); } } 
  • SSLHandshakeException Цепочный якорь для пути сертификации не найден Android HTTPS
  • MathML и Java
  • Java: сумма двух целых чисел печатается как конкатенация двух
  • Какие языки программирования могут использоваться для разработки в Android?
  • Можем ли мы предположить значения массива по умолчанию в Java? например, предположим, что массив int задан для всех нhive?
  • Вибрация с длительностью и узором
  • Использование статических переменных в Android
  • Каковы все различные способы создания объекта в Java?
  • Calendar.getInstance (TimeZone.getTimeZone («UTC»)) не возвращает время UTC
  • Как вызвать метод в определенное время в java?
  • В чем разница между этим и Activity.this
  • Interesting Posts

    Android-приемник SMS не работает

    Разработка API-интерфейсов C для объектно-ориентированного кода на C ++

    Определите, работает ли на корневом устройстве

    Как изменить современный пользовательский интерфейс Skype на обычное окно

    остановить службу в android

    Какое соглашение об именах пакетов вы используете для личных / хобби проектов на Java?

    Как я могу добавить несколько интерактивных ссылок сразу в Microsoft Word?

    Эквивалент карты NSArray

    Когда удалять CancellationTokenSource?

    Невозможно выбросить ошибку из функции выполнения асинхронного обещания

    Синхронизация подкастов на нескольких компьютерах с помощью iTunes (в Windows)

    Какую кучу скриптов ffmpeg мне нужно, чтобы получить HTML5-совместимое «Видео для всех»?

    Установить постоянную переменную окружения в Windows XP

    Использование iPhoto без копирования изображений?

    Невозможно понять параметр useCapture в addEventListener

    Давайте будем гением компьютера.