Java中的枚舉是一種特殊類型的類,它表示了一組固定的常量。在撲克牌游戲中,花色和點數常常被用來表示撲克牌的不同類型。
public enum Suit { CLUBS, DIAMONDS, HEARTS, SPADES } public enum Rank { ACE, TWO, THREE, FOUR, FIVE, SIX, SEVEN, EIGHT, NINE, TEN, JACK, QUEEN, KING }
以上代碼分別定義了花色和點數的枚舉類型。在Java中,枚舉類型被看作一種類,我們可以給它添加構造函數,方法等。對于花色和點數的枚舉,我們可以定義一個toString()方法來返回對應的字符串。
public enum Suit { CLUBS("?"), DIAMONDS("?"), HEARTS("?"), SPADES("?"); private String symbol; private Suit(String symbol) { this.symbol = symbol; } public String toString() { return symbol; } } public enum Rank { ACE("A"), TWO("2"), THREE("3"), FOUR("4"), FIVE("5"), SIX("6"), SEVEN("7"), EIGHT("8"), NINE("9"), TEN("10"), JACK("J"), QUEEN("Q"), KING("K"); private String symbol; private Rank(String symbol) { this.symbol = symbol; } public String toString() { return symbol; } }
以上代碼添加了symbol屬性和構造函數,同時定義了toString()方法來返回對應的字符串。
在實際使用過程中,我們可以將花色和點數結合起來表示一張撲克牌。
public class Card { private final Suit suit; private final Rank rank; public Card(Suit suit, Rank rank) { this.suit = suit; this.rank = rank; } public String toString() { return rank.toString() + suit.toString(); } }
以上代碼定義了Card類,其中包含了花色和點數屬性,并在構造函數中初始化它們。我們還定義了toString()方法來返回對應的字符串。這樣,我們就可以通過創建一個Card對象來表示一張撲克牌。
上一篇php golang出處
下一篇css三層符號