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:
- Take LinkedHashMap as an input.
- Create new TreeMap.
- Pass LinkedHashMap object into the constructor of TreeMap.
- Print Keys of TreeMap object.
Below is the implementation of the above approach:
Java
// Sort LinkedHashMap by keys in Javaimport 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)); } }} |
After Sorting : Key -> 1: Value -> 20 Key -> 2: Value -> 11 Key -> 3: Value -> 44 Key -> 4: Value -> 15 Key -> 5: Value -> 4
