Java创建团队然后添加球员

时间:2019-11-19 15:05:26

标签: java arrays

我有Team,Player和System三个类。我需要创建一个新团队,然后通过System类将玩家添加到该团队中。我在类中创建了构造函数,然后在系统中创建了对象。

    public Team(String teamName){
          this.teamName = teamName;
          } 

       public Player(String firstName,String lastName, int Age) {
       this.firstName = firstName;
       this.lastName = lastName;
       this.Age = Age;
        }

public class System{
        Team t = new Team("");
        Player player1 = new Player("","",0);

     public void addTeam(String teamName) {
          teamList.setModel(listModel);
          listModel.addElement(teamName);
          t.SetName(teamEnterTextField.getText());
          teamsList.add(new Team(t.GetName()));      
          System.out.println("Added Team: "+ t.GetName());
          System.out.println("Current Amount of Teams: "+teamsList.size());
        }
}

我已经尝试了一些方法,但是老实说,我不知道该怎么做,请问有人可以提供一些建议。

1 个答案:

答案 0 :(得分:0)

您需要将玩家放入团队类。这样,每个团队都有自己的球员。

在您的System类中,您将有一个团队列表。

播放器类的代码:

class Player {

   String firstName ;
   String lastName ;
   int age ;

   public Player(String firstName,String lastName, int age) {
       this.firstName = firstName;
       this.lastName = lastName;
       this.age = age;
   }

   public String toString(){
       return firstName ;
   }
}

团队课程代码:

class Team {
   String teamName ;

   List<Player> players = new ArrayList<Player>() ; ;

   public Team(String teamName){
       this.teamName = teamName;
   }

   public void addPlayer(Player player) {
       players.add(player);
   }

   public String getTeamName(){
       return teamName;
   }

   public List<Player> getPlayers(){
       return  players ;
   }
}

系统类的代码(我将其重命名为Game,避免将其命名为System)

public class Game {

   HashMap<String ,Team> teams = new LinkedHashMap<String ,Team>();


   public void addTeam(String teamName) {
      Team team =  new Team(teamName) ;
      teams.put(teamName ,team);
   }

   public void addPlayer(String teamName,String firstName,String lastName, int age ) {
       Player player = new Player(firstName,lastName, age);
       Team team = teams.get(teamName) ;
       team.addPlayer(player);
   }

   public void print(){
       for(Map.Entry<String , Team> entry : teams.entrySet() ) {
           Team team = entry.getValue();
           System.out.println("Team Name : " + team.getTeamName());
           System.out.println("Players : " + team.getPlayers().toString());
       }
   }

   public static void main (String args[]) throws Exception{

       Game game = new Game();

       game.addTeam("team1");
       game.addTeam("team2");

       game.addPlayer("team1","mehdi","ayari",20);
       game.addPlayer("team2","name1","name2",30);
       game.addPlayer("team2","name2","name3",40);

       game.print();

   }
}

输出

Team Name : team1
Players : [mehdi]
Team Name : team2
Players : [name1, name2]