The comparator() method of java.util.TreeMap class is used to return the comparator used to order the keys in this map, or null if this map uses the natural ordering of its keys.
--> java.util Package --> TreeMap Class --> comparator() Method
Syntax:
public Comparator comparator()
Return Type: This method returns the comparator used to order the keys in this map, or null if this map uses the natural ordering of its keys.
Note: descendingIterator() method is natural ordering by default.
Example 1: For Natural ordering
Java
// Java program to Illustrate comparator() Method // for Natural Ordering (Descending Order) // Importing required classes import java.util.*; // Main class public class GFG { // Main driver method public static void main(String[] argv) throws Exception { // Try block to check for exceptions try { // Creating an empty TreeMap by // creating object of NavigableMap NavigableMap<Integer, String> treemap = new TreeMap<Integer, String>(); // Populating TreeMap // using put() method treemap.put( 1 , "one" ); treemap.put( 2 , "two" ); treemap.put( 3 , "three" ); treemap.put( 4 , "four" ); treemap.put( 5 , "five" ); // Printing the TreeMap System.out.println( "TreeMap: " + treemap); // Getting used Comparator in the map // using comparator() method Comparator comp = treemap.comparator(); // Printing the comparator value System.out.println( "Comparator value: " + comp); } // Catch block to handle the exception catch (NullPointerException e) { // Display message if exception occurs System.out.println( "Exception thrown : " + e); } } } |
TreeMap: {1=one, 2=two, 3=three, 4=four, 5=five} Comparator value: null
Example 2: For Reverse ordering
Java
// Java program to demonstrate comparator() Method // for Reverse Ordering // Importing required classes import java.util.*; // Main class public class GFG { // Main driver method public static void main(String[] argv) throws Exception { // Try block to check for exceptions try { // Creating an empty TreeMap NavigableMap<Integer, String> treemap = new TreeMap<Integer, String>( Collections.reverseOrder()); // Populating TreeMap // using put() method treemap.put( 1 , "one" ); treemap.put( 2 , "two" ); treemap.put( 3 , "three" ); treemap.put( 4 , "four" ); treemap.put( 5 , "five" ); // Printing the TreeMap System.out.println( "TreeMap: " + treemap); // Getting used Comparator in the map // using comparator() method Comparator comp = treemap.comparator(); // Printing the comparator value System.out.println( "Comparator value: " + comp); } // Catch block to handle the exceptions catch (NullPointerException e) { // Display message if exception occurs System.out.println( "Exception thrown : " + e); } } } |
TreeMap: {5=five, 4=four, 3=three, 2=two, 1=one} Comparator value: java.util.Collections$ReverseComparator@232204a1