import java.util.Collections;
import java.util.Iterator;
import java.util.List;


public class Main {
	public static void main(String[] args)
	{
		List<Card> deck = Card.newDeck();
		Collections.shuffle(deck);
		System.out.println(deck);
		
		Collections.sort(deck);
		System.out.println(deck);
		
		Iterator<Card> it;		
		System.out.println();
		System.out.println("Classic iterator:");
		it = deck.iterator();
		while (it.hasNext())
			System.out.print(it.next()+", ");
		
		System.out.println();
		System.out.println("Reverse iterator:");
		it = Card.reverseIterator(deck);
		while (it.hasNext())
			System.out.print(it.next()+", ");
		
		System.out.println();
		System.out.println("Shuffle iterator:");
		it = Card.shuffleIterator(deck);
		while (it.hasNext())
			System.out.print(it.next()+", ");
		
	}

}
