How to sort Map values by key in Java?


Let’s say the following is our Map with unsorted keys −

HashMap<String, String>map = new HashMap<String, String>();
map.put("1", "A");
map.put("6", "B");
map.put("3", "C");
map.put("7", "D");
map.put("5", "E");
map.put("2", "F");
map.put("4", "G");
map.put("8", "H");

Now, sort the above Map. The result of tMap below would be a sorted map by key −

Map<String, String>tMap = new TreeMap<String, String>(map);

Example

 Live Demo

import java.util.HashMap;
import java.util.Map;
import java.util.TreeMap;
public class Demo {
   public static void main(String[] args) {
      HashMap<String, String>map = new HashMap<String, String>();
      map.put("1", "A");
      map.put("6", "B");
      map.put("3", "C");
      map.put("7", "D");
      map.put("5", "E");
      map.put("2", "F");
      map.put("4", "G");
      map.put("8", "H");
      Map<String, String>tMap = new TreeMap<String, String>(map);
      System.out.println("Sorted Map values: "+tMap);
   }
}

Output

{1=A, 2=B, 3=C, 4=D, 5=E, 6=F, 7=G, 8=H}

karthikeya Boyini
karthikeya Boyini

I love programming (: That's all I know

Updated on: 30-Jul-2019

148 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements