我不知道为什么会这样,请有人帮忙。
if(commandLabel.equalsIgnoreCase("maisponto")){
if(pontos.get(player.getName()) == null){
pontos.put(player.getName(), 0f);
player.sendMessage("Adicionado");
}
if(pontos.get(player.getName()) != null){
Float ponto = pontos.get(player.getName());
ponto += 1f;
player.sendMessage(ChatColor.WHITE + "Pontos: " + ChatColor.GREEN + ponto);
}
}
问题是该值始终为1且不会像1,2,3 ......
Hashmap是String和Float
答案 0 :(得分:1)
您需要将值实际存储回HashMap。将它递增一后,添加以下行:
pontos.put(player.getName(), ponto);
作为旁注,如果您只是存储整数,为什么使用Float
?只需使用Integer
,您就可以了。此外,它使得价值更加清晰。