JAVA 21点游戏。数组中的字符串?

JAVA 21点游戏。数组中的字符串?,java,arrays,Java,Arrays,我正在尝试制作一个简单的基于文本的21点游戏。我想知道如何将字符串放入数组中,或者使用字符串数组并在数组外为它们赋值。如果这有道理的话。下面是我的代码 int deck[] = {2,3,4,5,6,7,8,9,10,Jack,Queen,King,Ace}; 显然,这是行不通的,因为数组用于整数。可能是一个字符串数组,然后按前面所述分配数字?祝你今天愉快 使用Enum: public enum Rank { DEUCE, THREE, FOUR, FIVE, SIX, SEVEN,

我正在尝试制作一个简单的基于文本的21点游戏。我想知道如何将字符串放入数组中,或者使用字符串数组并在数组外为它们赋值。如果这有道理的话。下面是我的代码

int deck[] = {2,3,4,5,6,7,8,9,10,Jack,Queen,King,Ace};
显然,这是行不通的,因为数组用于整数。可能是一个字符串数组,然后按前面所述分配数字?祝你今天愉快

使用
Enum

public enum Rank {
    DEUCE, THREE, FOUR, FIVE, SIX, SEVEN, EIGHT, 
    NINE, TEN, JACK, QUEEN, KING, ACE;
}
如果需要,可以添加值


然后,你的数组类型为
Rank[]

正确的方法是进行枚举,你可以给它赋值,你可以用它来计算你的游戏。

你可以对值进行枚举,比如二、三……杰克、皇后、国王。
public enum CardValue {
  Two, Three, Four, Five, Six, Seven, Eight, Nine, Ten, Jack, Queen, King, Ace;
}
当您访问它时,您也必须将所有内容转换回正确的类型

字符串卡=(字符串)组[12];

int anotherCard=(整数)组[0]

如果必须-
String deck[]={“2”,…}
为什么不创建带有等级、套件、名称等的卡片类。以后可能需要所有这些。然后你可以把这些卡片放在牌组中。然后你可以对套装做同样的处理,等等。
公共枚举套装{梅花、钻石、红桃、黑桃;}
谢谢你的建议。我得仔细阅读一下Enum。我理解它是如何工作的以及为什么工作的,但对于如何实现它仍然有点模糊。非常感谢!
Object[] deck = new Object[13];
deck[0] = (Object)new Integer(2);
...
deck[12] = (Object)new String("Ace");

String card = (String)deck[12];
int anotherCard = (Integer)deck[0];