import java.util.*;
/**
 * A class that represents a player's hand
 * Uses a "parameterized" ArrayList (or in other words an ArrayList of Cards
 * @author - Nancy Harris, James Madison University
 * @version - 1.0
 */

public class Hand
{
	// specify that cards is an ArrayList of only Card objects
	// if generic object, then add method does not compile.
	private ArrayList<Card> cards;
	
	/** default constructor builds a hand of 5 cards
	*/
	public Hand()
	{
		// this instantiates the ArrayList as a specific list of Cards
		cards = new ArrayList<Card>(5);
	}
	
	/**
	* Explicit constructor builds a hand of num cards
	*
	* @param num size of this Hand
	*/
	public Hand(int num)
	{
		// this instantiates the ArrayList as a specific list of Cards
		cards = new ArrayList<Card>(num);
	}
	
	/** adds a card to this hand.  
	*  @param newCard The card object we are adding
	*/	
	public void addCard(Card newCard) 
	{
						
	}
	/** removeCard must first check to see if the specified Card object
	*   exists in the hand, then it can remove it.
	*
	*   @param awayCard Card object to be removed.
	*   @return 1 if the remove was successful, -1 otherwise.
	*/
	public int removeCard(Card awayCard)
	{
		return -999;
	}
	
	/** removeCard must first check to see if the specified Card object
	*   exists in the hand, then it can remove it.
	*   @param whichCard position of card to remove.
	*   @return 1 if the remove was successful, -1 otherwise.
	*/
	public int removeCard(int whichCard)
	{
		return -999;
	}
	
	/** display hand will run through all of the cards in the hand and using the toString
	*   method of the Card class, print the cards.
	*/
	public void displayHand()
	{

	}
}