001package hw0.optional;
002
003import java.util.Collection;
004import java.util.LinkedList;
005
006public class MyHand {
007    static LinkedList<Card> hand;
008
009    MyHand() {
010        hand = new LinkedList<Card>();
011
012        hand.add(new Card(CardValue.EIGHT, CardSuit.CLUBS));
013        hand.add(new Card(CardValue.TWO, CardSuit.CLUBS));
014        hand.add(new Card(CardValue.QUEEN, CardSuit.CLUBS));
015        hand.add(new Card(CardValue.NINE, CardSuit.SPADES));
016        hand.add(new Card(CardValue.KING, CardSuit.HEARTS));
017        hand.add(new Card(CardValue.QUEEN, CardSuit.HEARTS));
018        hand.add(new Card(CardValue.SEVEN, CardSuit.HEARTS));
019    }
020
021    public static void main(String[] args) {
022        MyHand myhand = new MyHand();
023        myhand.printHand(hand);
024        myhand.sortSmallestToLargest();
025        System.out.println("\nAfter sorting from smallest to largest:");
026        myhand.printHand(hand);
027        myhand.sortLargesttoSmallest();
028        System.out.println("\nAfter sorting from largest to smallest:");
029        myhand.printHand(hand);
030        System.out.println("\nHearts in hand:");
031        myhand.printHand_OnlyHearts(hand);
032        System.out.println("\nHand after removing faces:");
033        myhand.printHand_RemoveFaceCards(hand);
034    }
035
036    /**
037     * Print the contents of a hand of cards to the screen. [Note:
038     * one can also System.out.println to print the contents of
039     * arrays]
040     */
041    public void printHand(Collection<Card> hand) {
042        // Your code here.
043    }
044
045    /**
046     * Sorts the cards so that any subsequent calls to printHand
047     * will print the Hand from the smallest to the largest.
048     */
049    public void sortSmallestToLargest() {
050        // Your code here.
051    }
052
053    /**
054     * Sorts the cards so that any subsequent calls to printHand
055     * will print the Hand from the largest to the smallest.
056     */
057    public void sortLargesttoSmallest() {
058        // Your code here.
059    }
060
061    /**
062     * Print only the cards in hand that are hearts
063     */
064    public void printHand_OnlyHearts(Collection<Card> hand) {
065        // Your code here.
066    }
067
068    /**
069     * Print only the cards in hand that are number cards AND remove face cards
070     * from hand
071     */
072    public void printHand_RemoveFaceCards(Collection<Card> hand) {
073        // Your code here.
074    }
075
076}