Sort a List in reverse order in Java

Java 8Object Oriented ProgrammingProgramming

A list can be sorted in reverse order i.e. descending order using the java.util.Collections.sort() method. This method requires two parameters i.e. the list to be sorted and the Collections.reverseOrder() that reverses the order of an element collection using a Comparator.

The ClassCastException is thrown by the Collections.sort() method if there are mutually incomparable elements in the list.

A program that demonstrates this is given as follows:

Example

 Live Demo

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Demo {
   public static void main(String args[]) {
      List aList = new ArrayList();
      aList.add("James");
      aList.add("Harry");
      aList.add("Susan");
      aList.add("Emma");
      aList.add("Peter");
      System.out.println("The unsorted ArrayList is: " + aList);
      Collections.sort(aList, Collections.reverseOrder());
      System.out.println("The sorted ArrayList in reverse order is: " + aList);
   }
}

The output of the above program is as follows:

The unsorted ArrayList is: [James, Harry, Susan, Emma, Peter]
The sorted ArrayList in reverse order is: [Susan, Peter, James, Harry, Emma]

Now let us understand the above program.

The ArrayList aList is created. Then ArrayList.add() is used to add the elements to the ArrayList. The unsorted ArrayList is printed and then the ArrayList elements are sorted in reverse order using Collections.sort() and Collections.reverseOrder(). Finally, the sorted ArrayList is printed. A code snippet which demonstrates this is as follows:

List aList = new ArrayList();
aList.add("James");
aList.add("Harry");
aList.add("Susan");
aList.add("Emma");
aList.add("Peter");
System.out.println("The unsorted ArrayList is: " + aList);
Collections.sort(aList, Collections.reverseOrder());
System.out.println("The sorted ArrayList in reverse order is: " + aList);
raja
Published on 07-Feb-2019 12:36:17
Advertisements