Advertisement
fathershuma

printing problem

Feb 7th, 2013
238
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.51 KB | None | 0 0
  1. public class Card {
  2.     public final static int MAX_SUITS= 4;
  3.     public final static int MAX_FACE_VALUES= 13;
  4.  
  5.     enum Suit { CLUBS, HEARTS, DIAMONDS, SPADES}
  6.     enum Face { JACK, QUEEN, KING, ACE}
  7.  
  8.     private Suit suit;
  9.     private int faceValue;
  10.  
  11.     public Card(int suit, int faceValue){
  12.         setSuit(suit);
  13.         setFaceValue(faceValue);
  14.     }
  15.  
  16.     public void setSuit(int suit){
  17.         switch (suit){
  18.             case 0: this.suit= Suit.CLUBS; break;
  19.             case 1: this.suit= Suit.HEARTS; break;
  20.             case 2: this.suit= Suit.DIAMONDS; break;
  21.             case 3: this.suit= Suit.SPADES; break;
  22.             default: System.out.println("Suit "+suit+" is invalid.");
  23.         }
  24.         }
  25.     public void setFaceValue(int faceValue){
  26.         if (faceValue >= 0 && faceValue <MAX_FACE_VALUES)
  27.             this.faceValue= faceValue;
  28.         else
  29.             System.out.println("The faceValue "+faceValue+" is invalid.");
  30.     }
  31.  
  32.     public String getSuit(){
  33.         return suit+" ";
  34.     }
  35.     public String getFaceValue(){
  36.         if(faceValue == 0)
  37.             return Face.ACE + " ";
  38.         else if(faceValue == 10)
  39.             return Face.JACK + " ";
  40.         else if(faceValue == 11)
  41.             return Face.QUEEN + " ";
  42.         else if(faceValue ==12)
  43.             return Face.KING + " ";
  44.         else
  45.             return (faceValue + 1)+ " ";
  46.     }
  47.     public String toString(){
  48.         return "The card is a "+getFaceValue()+" of "+ getSuit();
  49.     }
  50.  
  51.  
  52. }
  53.  
  54. import java.util.*;
  55. public class DeckOfCards {
  56.  
  57.     static int MAX_CARDS= 52;
  58.     final static int MAX_SUITS= 4;
  59.     final static int MAX_FACE_VALUES= 13;
  60.     final static int REPEAT_SHUFFLE= 7;
  61.     static int numCardsLeftInDeck=0;
  62.     int cardsRemainingInDeck= 52;
  63.  
  64.  
  65.  
  66.     static Card[] cardDeck= new Card[MAX_CARDS];
  67.     Random cardShuffler= new Random();
  68.    
  69.  
  70.     public DeckOfCards(){
  71.       int k=0;
  72.  
  73.       for(int s=0; s < MAX_SUITS; s++)
  74.       {
  75.           for(int t=0; t< MAX_FACE_VALUES; t++)
  76.           {
  77.               cardDeck[k]= new Card(s,t);
  78.               k++;
  79.           }
  80.         }
  81.     }
  82.     public void shuffle(){
  83.        
  84.      final int REPEAT_SHUFFLE= 7;
  85.  
  86.         for (int a=1; a<7; a++){
  87.  
  88.             for( int b=0; b<MAX_CARDS; b++){
  89.                 int bSwap= cardShuffler.nextInt (MAX_CARDS-1);
  90.                 Card tempCard= cardDeck[b];
  91.                 cardDeck[b]= cardDeck[bSwap];
  92.                 cardDeck[bSwap]= tempCard;
  93.                 }
  94.             }
  95.         }
  96.  
  97.     public Card dealOneCard(){
  98.             Card dealtCard=  cardDeck[(MAX_CARDS)-numCardsLeftInDeck] ;
  99.             cardDeck[MAX_CARDS - numCardsLeftInDeck()]= null;
  100.             numCardsLeftInDeck++;
  101.         return dealtCard;
  102.     }
  103.  
  104.     public int numCardsLeftInDeck(){
  105.         return cardsRemainingInDeck;
  106.     }
  107.  
  108.     public String toString(){
  109.         String outPut = new String(" ");
  110.  
  111.         for(int i=0; i < cardDeck.length; i++){
  112.             outPut += "(" +(i+1) + ") " + cardDeck[i] + "\n";
  113.         }
  114.         return outPut;
  115.     }
  116. }
  117.  
  118. public class PokerHand {
  119.     public static void main(String[] args){
  120.      
  121.         DeckOfCards cardDeck= new DeckOfCards();
  122.         cardDeck.shuffle();
  123.         Card[] pokerHand= new Card[5];
  124.  
  125.         for(int x=0; x<5; x++){
  126.            
  127.             System.out.println(pokerHand);
  128.       }
  129.  
  130.  
  131.        
  132.        
  133.        
  134.        
  135.  
  136.  
  137.     }
  138. }
  139.  
  140. When i run the program:
  141. [LCard;@26420e44
  142. [LCard;@26420e44
  143. [LCard;@26420e44
  144. [LCard;@26420e44
  145. [LCard;@26420e44
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement