-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCard.java
57 lines (50 loc) · 1.51 KB
/
Card.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
public class Card {
private int value;
public static enum Suit{
HEART("Hearts"), SPADE("Spades"), CLUB("Clubs"), DIAMOND("Diamond");
String str;
static Suit[] suits = Suit.values();
Suit(String str){
this.str = str;
}
public static Suit getSuitFromIndex(int i){
return suits[i];
}
}
private Suit suit;
private final int ACE_LOW = 1;
private final int JACK = 11;
private final int QUEEN = 12;
private final int KING = 13;
private final int ACE_HIGH = 14;
public Card(Suit suit, int value){
this.suit = suit;
this.value = value;
}
public void setValue(int value){
this.value = value;
}
public void setSuit(Suit suit){
this.suit = suit;
}
public String getSuit(){
return this.suit.str;
}
public int getValue(){
return value;
}
public String toString(){
String stringVal = ""+ value;
if(value > 10 || value == 1){
switch(value){
case ACE_LOW : stringVal = "Ace";break;
case JACK : stringVal = "Jack";break;
case QUEEN : stringVal = "Queen";break;
case KING : stringVal = "King";break;
case ACE_HIGH : stringVal = "Ace";break;
default : stringVal = "ERROR";break;
}
}
return stringVal + " of " + suit.str;
}
}