Drop Down

Tuesday, March 5, 2019

Sort HashMap according to Value

package test;

import java.util.*;

//map ---list--sort--map(display)
public class SortMap_Value
{
public static void main(String[] args)
{
Map<String,Integer> map = new HashMap<>();
map.put("A", 78);
map.put("B", 55);
map.put("C", 807);
map.put("D", 34);
map.put("E", 89);
map.put("F", 700);

//List<Map.Entry<String, Integer>> list = new LinkedList<>(map.entrySet());
List<Map.Entry<String, Integer>> list = new ArrayList<>(map.entrySet());
Collections.sort(list, new MyComparator2());

Map<String,Integer> map2 = new LinkedHashMap<>();
for(Map.Entry<String,Integer> entry : list)
{
map2.put(entry.getKey(), entry.getValue());
}
for(Map.Entry<String,Integer> entry : map2.entrySet())
{
System.out.println(entry.getKey()+" : "+entry.getValue());
}


}

}
========================================
package test;

import java.util.Comparator;import java.util.Map;
import java.util.Map.Entry;


public class MyComparator2 implements Comparator<Map.Entry<String,Integer>>
{

@Override
public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2)
{

//return o1.getValue().compareTo(o2.getValue());
return o2.getValue().compareTo(o1.getValue());
}

}
=========================================


No comments:

Post a Comment

Java 8 Notes Pics