使用Comparator和Java Collections以降序对ArrayList进行排序

为了使用Comparator以降序对ArrayList进行排序,我们需要使用Collections.reverseOrder()方法,该方法返回一个比较器,该比较器对实现Comparable接口的对象集合提供自然排序的逆序。

声明-java.util.Collections.reverseOrder()方法的声明如下-

public static <T>Comparator<T> reverseOrder()

让我们看一个程序,该程序使用带有Java集合的Comparator以降序对ArrayList进行排序-

示例

import java.util.*;
public class Example {
   public static void main (String[] args) {
      ArrayList<Integer> list = new ArrayList<Integer>();
      list.add(10);
      list.add(50);
      list.add(30);
      list.add(20);
      list.add(40);
      list.add(60);
      System.out.println("Original list : " + list);
      Comparator c = Collections.reverseOrder();
      Collections.sort(list,c);
      System.out.println("Sorted list using Comparator : " + list);
   }
}

输出结果

Original list : [10, 50, 30, 20, 40, 60]
Sorted list using Comparator : [60, 50, 40, 30, 20, 10]