一尘不染

在Java映射中查找与最大值关联的键

java

获取与映射中的最大值关联的键的最简单方法是什么?

我相信,当您想要对应于最大值的键时,Collections.max(someMap)将返回最大键。


阅读 319

收藏
2020-03-19

共1个答案

一尘不染

基本上,你需要遍历地图的条目集,同时记住“当前已知的最大值”和与其关联的键。(当然,或者只是包含两者的条目。)

例如:

Map.Entry<Foo, Bar> maxEntry = null;

for (Map.Entry<Foo, Bar> entry : map.entrySet())
{
    if (maxEntry == null || entry.getValue().compareTo(maxEntry.getValue()) > 0)
    {
        maxEntry = entry;
    }
}
2020-03-19