public void AddPlayer(SoccerPlayer player) { if (Players == null) { players.Add(player); } else { if (players.Contains(player)) { throw new ArgumentException("Player already on team"); } else { if (player.Gender == TeamGender) { if (player.Age <= AgeLimit) { players.Add(player); } else { throw new ArgumentException("Player too old for team"); } } else { throw new ArgumentException("Not gender appropriate"); } } } }
// indexer property public SoccerPlayer this[String playerName] { get { SoccerPlayer player = null; bool isFound = false; for (int i = 0; i < players.Count; i++) { if (String.Compare(players[i].Name, playerName, StringComparison.OrdinalIgnoreCase) == 0) { isFound = true; player = players[i]; } } if (isFound == true) { return(player); } else { throw new ArgumentException("Player not found"); } } }