通过 1 个值 java 得到 2 个键

get 2 keys by 1 value java hashmap

我实时制作顶级玩家,我需要根据他的积分值获取密钥(玩家昵称)

我使用这个获取密钥:

HashMap<Player, Integer> score  = new HashMap<>();

    for(Player key: score.keySet()) {
        if(score.get(key).equals(VALUE OF POINT)) {
            Player = key;
        }
    }

一切正常,但可能会出现玩家点数相同的情况,如果你搜索,你会发现只有一个钥匙

如何获得第二把钥匙?

创建一个玩家列表,收集得分相同的玩家

List<Player> sameScorePlayers = new ArrayList<>();
for(Player key: score.keySet()) {
    if(score.get(key).equals(VALUE OF POINT)) {
        sameScorePlayers.add(key);
    }
} 

这样 sameScorePlayers 不仅可以容纳两个,而且可以容纳所有具有相同点数的玩家。