我是Java的新手,经常发现我需要对Map<Key, Value>值进行排序.
由于值不是唯一的,我发现自己将其转换keySet为a array,并通过数组排序对该数组进行排序,并使用自定义比较器对与键关联的值进行排序.
有没有更简单的方法?
获取地图中最大值关键字的最简单方法是什么?
我相信当您需要与最大值对应的键时,Collections.max(someMap)将返回最大键.
我有这样的HashMap定义......
HashMap<String,Integer> uniqueNames = new HashMap<String,Integer>();
Run Code Online (Sandbox Code Playgroud)
它存储名称和该名称的出现.例如...
uniqueNames.put("lastname",42);
Run Code Online (Sandbox Code Playgroud)
如何获得出现次数最多的名称?
有关更多信息,我正在使用"人物"的二叉搜索树,将唯一的名称和频率存储在一个HashMap.我想要做的是打印最常见的姓氏,有人告诉我使用,HashMap因为我想存储一个String与一起Integer.也许我应该使用一个类来存储名称和频率?请有人请提供一些建议.