2-APL UPC project.
1
2package cardtable;
3
4
5import java.util.*;
6
7public class Rank {
8 private String name;
9 private String symbol;
10 private static boolean aceHigh = false;
11
12 /**
13 * The rank ace.
14 */
15 public final static Rank ACE = new Rank( "ace", "a" );
16 /**
17 * The rank two.
18 */
19 public final static Rank TWO = new Rank( "two", "2" );
20 /**
21 * The rank three.
22 */
23 public final static Rank THREE = new Rank( "three", "3" );
24 /**
25 * The rank four.
26 */
27 public final static Rank FOUR = new Rank( "four", "4" );
28 /**
29 * The rank five.
30 */
31 public final static Rank FIVE = new Rank( "five", "5" );
32 /**
33 * The rank six.
34 */
35 public final static Rank SIX = new Rank( "six", "6" );
36 /**
37 * The rank seven.
38 */
39 public final static Rank SEVEN = new Rank( "seven", "7" );
40 /**
41 * The rank jack.
42 */
43 public final static Rank JACK = new Rank( "jack", "j" );
44 /**
45 * The rank queen.
46 */
47 public final static Rank QUEEN = new Rank( "queen", "q" );
48 /**
49 * The rank king.
50 */
51 public final static Rank KING = new Rank( "king", "k" );
52
53
54 final static java.util.List VALUES =
55 Collections.unmodifiableList(
56 Arrays.asList( new Rank[] { TWO, THREE, FOUR, FIVE, SIX, SEVEN,
57 JACK, QUEEN, KING, ACE } ) );
58
59
60 private Rank( String nameValue, String symbolValue ) {
61 name = nameValue;
62 symbol = symbolValue;
63 }
64
65
66 public String getName() {
67 return name;
68 }
69
70
71 public String toString() {
72 return name;
73 }
74
75
76 public String getSymbol() {
77 return symbol;
78 }
79
80
81 public int compareTo( Object otherRankObject ) {
82 Rank otherRank = (Rank) otherRankObject;
83 return VALUES.indexOf( this ) - VALUES.indexOf( otherRank );
84
85 }
86
87}