Скажем, я позволяю игрокам создавать команды, и создание команды вызывает новый экземпляр командного класса, который имеет список массивов, называемый членами.
Теперь в основном классе, как добавить игрока в команду после приглашения? У меня есть метод addPlayer в командном классе, который просто добавляет их в arraylist, но что, если в настоящее время есть несколько экземпляров класса команд (другие игроки создали команды), как он узнает, к кому присоединиться?
У меня есть переменная в классе Teams для teamLeader, которая устанавливается при создании экземпляра, если это может помочь мне отредактировать определенный экземпляр.
Team team = new Team(this, leader);
Любая помощь
Вам нужен идентификатор, чтобы однозначно различать каждую команду, и вы можете использовать этот идентификатор для хранения команд на Map
. Что-то вроде этого:
Map<String,Team> teamMap = new HashMap<String,Team>();
Выберите тип ключа согласно вашему требованию, я выбрал String для примера
Согласно вашему дизайну, после создания необходимо сохранить все команды в списке.
ArrayList teamsList=new ArrayList ();
Team team = new Team(this, leader);
teamsList.add(team);
Затем сверните все команды в методе addPlayer, а затем сравните лидера, а затем добавьте к нему игрока. Что-то вроде этого -
public void addPlayer (Player player,String leader){
for(int i=0; i<teamListSize;i++)
Team tempTeam=teamsList.get(i);
if(tempTeam.getLeader().equalsIgnoreCase(leader)){
tempTeam.add(player);
break;
}
}
Team
и часть, как вы это называли?