<分区>
Possible Duplicate:
How to sort a Map<Key, Value> on the values in Java?
我有一个 HashMap 类型:
HashMap<String, Integer> h = new HashMap<String, Integer>();
HashMap 包含一个字符串列表,Integer 是一个计数器,表示已找到该字符串的次数。我希望能够做的是根据整数对 HashMap 进行排序,然后根据字符串的字母顺序进行排序。
目前我正在记录一个单词的最大出现次数(名为 max 的变量)并显示如下值:
public void print(){
while(max > 0){
for (String key : h.keySet()){
if(h.get(key) == max){
System.out.println(key + " " + h.get(key));
}
}
max--;
}
}
它不按字母顺序对值进行排序,它还会访问 HashMap max*h(size) 次。
什么是更好的解决方案?