In my project, I have taken a HashMap like this
HashMap degree = new HashMap();
Suppose I have:
degree.put("a",5);
degree.put("b",2);
degree.put("c",4);
degree.put("d",2);
degree.put("e",3);
degree.put("f",5);
Now I have to Sort this list according to given Integer values
Sorted HashMap Should be :
{a=5, f=5, c=4, e=4, b=4, d=2}
How I can do this ?
解决方案
A HashMap is an unordered collection. It has no sort order. Even a TreeMap will sort by key, not value.
If you want to prepare a sorted list by the sort order of the values, you'll have to create an appropriate object, such as an ArrayList>, iterate over your HashMap and insert all the entries, and then call Collections.sort with a collation function.