Skip to content
Related Articles

Related Articles

Sort LinkedHashMap by Keys in Java

View Discussion
Improve Article
Save Article
  • Difficulty Level : Expert
  • Last Updated : 11 Dec, 2020

LinkedHashMap maintains insertion order. Convert LinkedHashMap into TreeMap and after that print keys of TreeMap which are sorted in nature.  

Example:

Input: linkedHashMap = {{5,4}, {3,44}, {4,15}, {1,20}, {2,11}}
Output:
key -> 1 : value -> 20
key -> 2 : value -> 11
key -> 3 : value -> 44
key -> 4 : value -> 15 
key -> 5: value -> 4

Approach:

  1. Take LinkedHashMap as an input.
  2. Create new TreeMap.
  3. Pass LinkedHashMap object into the constructor of TreeMap.
  4. Print Keys of TreeMap object.

Below is the implementation of the above approach:

Java




// Sort LinkedHashMap by keys in Java
import java.util.*;
import java.io.*;
  
class GFG {
    public static void main(String[] args)
    {
        LinkedHashMap<Integer, Integer> lMap
            = new LinkedHashMap<>();
  
        // adding key-value pairs to LinkedHashMap object
        lMap.put(5, 4);
        lMap.put(3, 44);
        lMap.put(4, 15);
        lMap.put(1, 20);
        lMap.put(2, 11);
        System.out.println("After Sorting :\n");
  
        // convert to TreeMap
        Map<Integer, Integer> map = new TreeMap<>(lMap);
  
        // iterate acc to ascending order of keys
        for (Integer sKey : map.keySet()) {
            System.out.println("Key -> " + sKey
                               + ":  Value -> "
                               + lMap.get(sKey));
        }
    }
}


Output

After Sorting :

Key -> 1:  Value -> 20
Key -> 2:  Value -> 11
Key -> 3:  Value -> 44
Key -> 4:  Value -> 15
Key -> 5:  Value -> 4
My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!