/**
 * Player represents a hockey player.
 */
public class Player {
  
  /**
   * are we debugging?
   */
  private boolean debug= false;
  
  /**
   * this Player's name
   */
  private String name;
  
  /**
   * this Player's number
   */
  private int number;
  
  /**
   * this Player's team
   */
  private String team;
  
  /**
   * create a Player named name, with
   * number, uh, number
   */
  public Player(String name, int number) {
    this.name= name;
    this.number= number; 
    if (debug) {
      System.out.println("name is: " + name +
                         " number is: " + number +
                         " team is: " + team);
    }
  }
  
  /**
   * create a Player named n, with number num, and
   * team ourTeam.
   */
  public Player(String n, String ourTeam, int num) {
    name= n;
    number= num;
    if (debug) {
      System.out.println("number is: " + number + ", and" +
                         " num is: " + num);
    }
    team= ourTeam;
  }
  
  /**
   * return an interesting String describing
   * this Player
   */
  public String toString() {
    return "Name:\n" + name +
      "\nNumber:\n" + number +
      "\nTeam:\n" + team;
  }
  
  /** 
   * is this Player equal to other?
   */
  public boolean equals(Player other) {
    return equals(this.name, other.name) &&
      this.number == other.number &&
      equals(this.team, other.team);
//    return this.name.equals(other.name) &&
//      this.number == other.number &&
//      equals(this.team, other.team);
  }
  
  /**
   * determine whether two Strings are equal,
   * even if the first one is null
   */
  private boolean equals(String s1, String s2){
    if (s1 == null && s2 == null) {
      return true;
    }
    else if (s1 != null && s2 != null) {
      return s1.equals(s2);
    }
    else {
      return false;
    }
  }
  
  public static void main(String[] args) {
    Player p1= new Player("A", 1),
      p2= new Player("B", 1);
    System.out.println(p1.equals(p2));
  }
  
}