我需要遍历HashMap,但要重视值的顺序。
例如,考虑以下<String, Integer>的哈希映射:

{"dog" : 2, "bird": 3, "cat" : 1}


现在,我需要按升序循环遍历hasp映射,以便

for () {
 System.out.println( currentKey );
}


将始终输出


  “猫”,“狗”,“鸟”

最佳答案

如果您想让地图在插入条目时按值对自身进行排序,那么最简单的方法可能是使用Google收藏库中的TreeMultimap之类的东西。

如果您仍想使用哈希映射,但是在从集合中检索值时对值进行了排序,则可以采用两种方法-可以使用values()方法获取值,然后在工具集上运行Collections.sort()返回列表,或者您可以再次使用TreeMultimap之类的类,将所有条目添加到当前哈希图中,然后对它们进行枚举。

08-28 16:01