我的树形图有问题
Map<Integer, String> map = new TreeMap<Integer, String>();
ArrayList<Integer> values = new ArrayList<Integer>();
int value;
map.put(value, uuid);
values.add(value);
我尝试对值进行排序以获得类似的内容
Player:
PlayerName1: 83
PlayerName2: 5
我用它来得分:
System.out.println(map.get(values.get(0)) + " : " + values.get(0));
但如果其中一个玩家拥有相同的分数,则地图会返回此信息:
PlayerName1 : 83
PlayerName1 : 83
感谢您的帮助:)
答案 0 :(得分:0)
为什么你没有使用Player
课程?您可以拥有一个允许重复的List<Player>
,并且仍然可以按点排序。
class Player {
private final String name;
private int points;
....
public int getPoints() {
return points;
}
@Override
public String toString() {
return String.format("%s: %d", name, points);
}
}
然后:
List<Player> players = new ArrayList<>();
//... add players
players.sort(Comparator.comparing(Player::getPoints).reversed());
System.out.println("Players:");
players.stream().forEach(p -> System.out.println("\t" + p));