How to write a program to create a TreeMap in reverse order in Java
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", "that");
treemap.put("5", "Community");
// Elements should be printed in reverse order
// of their insertion
Output : 5: Community
4: that
3: the
2: to
1: Welcome
Below program shows how to traverse a TreeMap in reverse order:
import java.util.*;
class JavaTreemapReverseExample {
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", "that");
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());
}
}
}
Output:
5: Community
4: that
3: the
2: to
1: Welcome