所以我正在为Minecraft制作一个插件。它基本上是一个团队插件。我需要做的是能够创建多个团队,但是我似乎无法弄清楚如何将对象名称更改为所选团队名称的球员。这是我的意思:

if (l.equalsIgnoreCase("NewTeam")) {
    teamName= args[0]; // This is the players chosen team name
     Team newTeam = new Team(teamName, sender);
     newTeam.addPlayer(sender);


由于这是一个服务器插件,因此必须处理多个团队,这意味着它正在创建许多团队对象,但所有对象都使用newTeam。有谁知道我可以做的更好的方法吗?谢谢。

最佳答案

您要搜索团队名称到团队对象的映射吗?
然后,您可以按照以下步骤进行操作:

Map<String,Team> teams = new TreeMap<String,Team>();

//Returns the team for 'teamName' or creates one, if it doesn't exist
public Team getTeam(String teamName)
{
    Team team = teams.get(teamName);
    if(team == null)
    {
        team = new Team(teamName,sender); //is 'sender' specific for a team??
        teams.put(teamName,team);
    }
    return team;
}

10-04 20:55