如何在Java中以降序对ArrayList进行排序

要对ArrayList进行排序,您需要使用Collections.sort()方法。这将按升序排序,但是如果要按降序对ArrayList进行排序,也请使用Collections.reverseOrder()方法。这被包含为参数-

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

以下是在Java中按降序对ArrayList进行排序的代码-

示例

import java.util.ArrayList;
import java.util.Collections;
public class Demo {
   public static void main(String args[]) {
      ArrayList<Integer> myList = new ArrayList<Integer>();
      myList.add(30);
      myList.add(99);
      myList.add(12);
      myList.add(23);
      myList.add(8);
      myList.add(94);
      myList.add(78);
      myList.add(87);
      System.out.println("Points\n"+ myList);
      Collections.sort(myList,Collections.reverseOrder());
      System.out.println("Points (descending order)\n"+ myList);
   }
}

输出结果

Points
[30, 99, 12, 23, 8, 94, 78, 87]
Points (descending order)
[99, 94, 87, 78, 30, 23, 12, 8]

让我们看另一个示例,其中我们将按降序对字符串值进行排序-

示例

import java.util.ArrayList;
import java.util.Collections;
public class Demo {
   public static void main(String args[]) {
      ArrayList<String> myList = new ArrayList<String>();
      myList.add("Jack");
      myList.add("Katie");
      myList.add("Amy");
      myList.add("Tom");
      myList.add("David");
      myList.add("Arnold");
      myList.add("Steve");
      myList.add("Tim");
      System.out.println("Names\n"+ myList);
      Collections.sort(myList,Collections.reverseOrder());
      System.out.println("Names (descending order)\n"+ myList);
   }
}

输出结果

Names
[Jack, Katie, Amy, Tom, David, Arnold, Steve, Tim]
Names (descending order)
[Tom, Tim, Steve, Katie, Jack, David, Arnold, Amy]