By default TreeMap elements in Java are sorted in ascending order of keys. However, we can create the TreeMap in reverse order using Collections.reverseOrder() method in Java and display the elements in descending order of keys.
The Collections.reverseOrderS() method in Java returns a Comparator that imposes reverse order of a passed Comparator object. We can use this method to sort any list or any other collection in reverse order of user defined Comparator.
Examples:
// Insert elements to the TreeMap Input : treemap.put("1", "Welcome"); treemap.put("2", "to"); treemap.put("3", "the"); treemap.put("4", "Geeks"); treemap.put("5", "Community"); // Elements should be printed in reverse order // of their insertion Output : 5: Community 4: Geeks 3: the 2: to 1: Welcome
Below program shows how to traverse a TreeMap in reverse order:
// Java program to traverse a TreeMap // in reverse order import java.util.*; class GFG { public static void main(String args[]) { // Map to store the elements Map<String, String> treemap = new TreeMap<String, String>(Collections.reverseOrder()); // Put elements to the map treemap.put( "1" , "Welcome" ); treemap.put( "2" , "to" ); treemap.put( "3" , "the" ); treemap.put( "4" , "Geeks" ); treemap.put( "5" , "Community" ); Set set = treemap.entrySet(); Iterator i = set.iterator(); // Traverse map and print elements while (i.hasNext()) { Map.Entry me = (Map.Entry)i.next(); System.out.print(me.getKey() + ": " ); System.out.println(me.getValue()); } } } |
5: Community 4: Geeks 3: the 2: to 1: Welcome