All pastes #986950 Raw Edit

secret

public text v1 · immutable
·published 2008-04-16 02:29 UTC
rendered paste body
public class Team{

    private int numWins;
    private int strength;
    private String name;
    private Team team;

    /**
     * Constructor for Team Objects
     *
     * @param name       name of team
     * @param numWins    number of wins in regular season
     * @param strength   strength of schedule for this team
     */

    public Team( String name, int numWins, int strength ){
        this.name = name;
        this.numWins = numWins;
        this.strength = strength;
       
    }

    /**
     * Returns true if two teams are identical
     *
     * @param other  a second team, used to test for equality
     * @return true if other is a Team object, and both objects
     *         contain the same value for all instance variables.
     */

    public boolean equals( Object other ){
        boolean value = false;
        if( ( team = new Team( name, numWins, strength )).equals( other ) ){
            value = true;
        }
        return value;
    }

    /**
     * compareTo provided to allow sorting of Team Objects
     *
     * @param other  a second team, used to compare number of wins
     * @return returns a 1 if the current team has fewer wins than the
     *         other team; -1 if the current team has more wins. If two
     *         teams have the same number of wins, compare using strength
     *         of schedule: return 1 if the current team has a smaller
     *         strength than the other team. Return -1 if the current
     *         team has a greater strength. If two teams have the same
     *         number of wins and strength, compare using the natural
     *         order comparison of the current team name compared to
     *         the other team name.
     */

    public int compareTo( Team other ){
        int value = 0;
        if( numWins > other.getWins() ){
            value = -1;
        }
        else if( numWins < other.getWins() ){
            value = 1;
        }
        else{
            if( strength > other.getStrengthOfSchedule() ){
                value = -1;
            }
            else if( strength < other.getStrengthOfSchedule() ){
                value = 1;
            }
            else{
                value = name.compareTo( other.getTeamName() );
            }
        }
        return value;
    }

    /**
     * Accessor method for team name
     *
     * @return team name
     */

    public String getTeamName(){
        return name;
    }

    /**
     * Accessor method for number of wins for this team
     *
     * @return the number of wins
     */

    public int getWins(){
        return numWins;
    }

    /**
     * Accessor method for the strength of schedule for this team
     *
     * @return the strength of schedule
     */

    public int getStrengthOfSchedule(){
        return strength;
    }

    /**
     * A simple implemntation of toString()
     *
     * @return a string representation of this team. The format is
     *         "team: (team-name) has: (#wins) wins under a schedule
     *         whose strength was rated: (strength) out of 10."
     */

    public String toString(){
        String print = "team: " + getTeamName() + " has: " + getWins() + " wins under a schedule whose strength was rated: " + getStrengthOfSchedule() + " out of 10.";
    return print;
    }

} // Team