Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Card {
- public final static int MAX_SUITS= 4;
- public final static int MAX_FACE_VALUES= 13;
- enum Suit { CLUBS, HEARTS, DIAMONDS, SPADES}
- enum Face { JACK, QUEEN, KING, ACE}
- private Suit suit;
- private int faceValue;
- public Card(int suit, int faceValue){
- setSuit(suit);
- setFaceValue(faceValue);
- }
- public void setSuit(int suit){
- switch (suit){
- case 0: this.suit= Suit.CLUBS; break;
- case 1: this.suit= Suit.HEARTS; break;
- case 2: this.suit= Suit.DIAMONDS; break;
- case 3: this.suit= Suit.SPADES; break;
- default: System.out.println("Suit "+suit+" is invalid.");
- }
- }
- public void setFaceValue(int faceValue){
- if (faceValue >= 0 && faceValue <MAX_FACE_VALUES)
- this.faceValue= faceValue;
- else
- System.out.println("The faceValue "+faceValue+" is invalid.");
- }
- public String getSuit(){
- return suit+" ";
- }
- public String getFaceValue(){
- if(faceValue == 0)
- return Face.ACE + " ";
- else if(faceValue == 10)
- return Face.JACK + " ";
- else if(faceValue == 11)
- return Face.QUEEN + " ";
- else if(faceValue ==12)
- return Face.KING + " ";
- else
- return (faceValue + 1)+ " ";
- }
- public String toString(){
- return "The card is a "+getFaceValue()+" of "+ getSuit();
- }
- }
- import java.util.*;
- public class DeckOfCards {
- static int MAX_CARDS= 52;
- final static int MAX_SUITS= 4;
- final static int MAX_FACE_VALUES= 13;
- final static int REPEAT_SHUFFLE= 7;
- static int numCardsLeftInDeck=0;
- int cardsRemainingInDeck= 52;
- static Card[] cardDeck= new Card[MAX_CARDS];
- Random cardShuffler= new Random();
- public DeckOfCards(){
- int k=0;
- for(int s=0; s < MAX_SUITS; s++)
- {
- for(int t=0; t< MAX_FACE_VALUES; t++)
- {
- cardDeck[k]= new Card(s,t);
- k++;
- }
- }
- }
- public void shuffle(){
- final int REPEAT_SHUFFLE= 7;
- for (int a=1; a<7; a++){
- for( int b=0; b<MAX_CARDS; b++){
- int bSwap= cardShuffler.nextInt (MAX_CARDS-1);
- Card tempCard= cardDeck[b];
- cardDeck[b]= cardDeck[bSwap];
- cardDeck[bSwap]= tempCard;
- }
- }
- }
- public Card dealOneCard(){
- Card dealtCard= cardDeck[(MAX_CARDS)-numCardsLeftInDeck] ;
- cardDeck[MAX_CARDS - numCardsLeftInDeck()]= null;
- numCardsLeftInDeck++;
- return dealtCard;
- }
- public int numCardsLeftInDeck(){
- return cardsRemainingInDeck;
- }
- public String toString(){
- String outPut = new String(" ");
- for(int i=0; i < cardDeck.length; i++){
- outPut += "(" +(i+1) + ") " + cardDeck[i] + "\n";
- }
- return outPut;
- }
- }
- public class PokerHand {
- public static void main(String[] args){
- DeckOfCards cardDeck= new DeckOfCards();
- cardDeck.shuffle();
- Card[] pokerHand= new Card[5];
- for(int x=0; x<5; x++){
- System.out.println(pokerHand);
- }
- }
- }
- When i run the program:
- [LCard;@26420e44
- [LCard;@26420e44
- [LCard;@26420e44
- [LCard;@26420e44
- [LCard;@26420e44
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement