To answer directly to your question, when you get a random card you are not making sure that the number chosen can't come out again.
To solve your problem while maintaining some of your structure, i would suggest you create an array with all cards, the mainDeck, and then create another array, the randDeck, by picking a card at random from mainDeck, passing it to randDeck and then removing it from mainDeck.
Now, to make it a lot easier to you (while still maintaining some structure), you can add all 52 numbers to a List <int>, or ArrayList<int> and then call Collections.shuffle() on it. More info on Collections here.
To make your code follow the guidelines of Object Oriented Programming, i would suggest creating a card class, with number and suite attributes, and work through there. It would be a lot easier in the long run.