首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JAVA 21点游戏。数组中的字符串?

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

Stack Overflow用户
提问于 2014-05-14 00:05:18
回答 3查看 368关注 0票数 1

我正在尝试做一个简单的文本基础二十一点游戏。我想知道如何将字符串放在数组中,或者让字符串数组在数组之外赋值。如果这有意义的话。下面是我为它编写的代码;

代码语言:javascript
复制
int deck[] = {2,3,4,5,6,7,8,9,10,Jack,Queen,King,Ace};

显然这是行不通的,因为数组是用来表示整数的。可能是一个字符串数组,然后按照前面所说的那样分配数字?祝你有愉快的一天!

EN

回答 3

Stack Overflow用户

发布于 2014-05-14 00:08:29

使用Enum

代码语言:javascript
复制
public enum Rank {
    DEUCE, THREE, FOUR, FIVE, SIX, SEVEN, EIGHT, 
    NINE, TEN, JACK, QUEEN, KING, ACE;
}

如有必要,您可以添加值。

则数组的类型为Rank[]

票数 3
EN

Stack Overflow用户

发布于 2014-05-14 00:11:49

您可以为这些值创建一个枚举,如Two、Three...Jack、Queen、King。

代码语言:javascript
复制
public enum CardValue {
  Two, Three, Four, Five, Six, Seven, Eight, Nine, Ten, Jack, Queen, King, Ace;
}

如果你真的想在数组中使用int和String,你可以像这样使用多态:

代码语言:javascript
复制
Object[] deck = new Object[13];
deck[0] = (Object)new Integer(2);
...
deck[12] = (Object)new String("Ace");

当您访问它时,您也必须将所有内容转换回正确的类型。

代码语言:javascript
复制
String card = (String)deck[12];
int anotherCard = (Integer)deck[0]; 

票数 0
EN

Stack Overflow用户

发布于 2014-05-14 00:09:05

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

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23636272

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档