title: deck of cards using methods and multiple classes
body: <p>I'm getting no output and not sure where to go from here.</p>
  
  <blockquote>
    <p>Design and implement a class called Card, which represents a standard playing card. Each card has a suit and a face value. Then, create a driver class that stores 52 objects of the Card class into an array. Include methods to shuffle the deck, deal a card and report the number of cards left in the deck. The shuffle method should assume a full deck. Your main method should deal each card from a shuffled deck, printing each card (suit and face value) as it is dealt. </p>
  </blockquote>
  
  <p>Here's what I have so far:</p>
  
  <pre><code>    import java.util.Random;
  public class card {
  public static void main(String[] args) {}
  
      public class deck {
  
  
          int[] deck = new int[52];
          String[] suits = {"Spades", "Hearts", "Diamonds", "Clubs"};
          String[] ranks = {"Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King"};
  
          public void create() {//initialize cards
              for (int i = 0; i &lt; deck.length; i++) deck[i] = i;
          }
  
  
          public void shuffle() {//deck shuffle
              for (int i = 0; i &lt; deck.length; i++) {
  
                  int index = (int) (Math.random() * deck.length);
                  int temp = deck[i];
                  deck[i] = deck[index];
                  deck[index] = temp;
              }
  
  
  
                   //display all the cards!
                  for (int i = 0; i &lt; deck.length; i++)
  
                  {
                      String suit = suits[deck[i] / 13];
                      String rank = ranks[deck[i] % 13];
                      System.out.println("Card number " + deck[i] + ": " + rank + " of " + suit);
  
  
                  }
  
  
              }
          }
  
          }
  </code></pre>