枚举在这种情况下非常有用..See Documentation.
首先创建一个 CardValue 的枚举,例如。 ACE TWO..
enum CardValue {
ACE(1),TWO(2),THREE(3),FOUR(4),
FIVE(5),SIX(6),SEVEN(7),EIGHT(8),
NINE(10),TEN(10),JACK(10),QUEEN(10),KING(10);
private int cardValue;
private CardValue (int cardValue){
this.cardValue = cardValue;
}
public String toString(){
return String.valueOf(cardValue);
}
}
第二次创建一个 CardSuit 的枚举,例如。 HEARTS CLUBS..
enum CardSuit {
DIAMONDS(1),HEARTS(2),SPADES(3),CLUBS(4);
private int cardSuit;
private CardSuit(int cardSuit){
this.cardSuit = cardSuit;
}
public String toString(){
return String.valueOf(cardSuit);
}
}
那就试试这个吧。
public static void main(String[] args){
String inputedCard = "Six of Hearts";
//Converts inputed card to uppercase then split it.
//so the expected value is aInputedCard[0] = SIX & aInputedCard[1] = HEARTS
String [] aInputedCard = inputedCard.toUpperCase().split(" OF ");
//So you just need to Verify if the input is in correct format to avoid exceptions
System.out.println("["+CardValue.valueOf(aInputedCard[0])+"]["+CardSuit.valueOf(aInputedCard[1])+"]");
}