gpt4 book ai didi

java - 纸牌游戏、数组和枚举

转载 作者:行者123 更新时间:2023-12-01 14:11:05 26 4
gpt4 key购买 nike

我目前陷入我的项目中。作业是创建一个二十一点游戏,使用 println/outprints 来可视化实际的游戏。

目前我已经在两个枚举中定义了卡值和类型,如下所示:

public enum Rank {    
TWO("2"),
THREE("3"),
FOUR("4"),
FIVE("5"),
SIX("6"),
SEVEN("7"),
EIGHT("8"),
NINE("9"),
TEN("10"),
JACK("J"),
QUEEN("Q"),
KING("K"),
ACE("A");

public String symbol;

private Rank(String symbol)
{
this.symbol = symbol;
}

public String getSymbol()
{
return symbol;
}
}


public enum Suit
{
CLUB,DIAMOND,HEART,SPADES;
}

这些在我的套牌类中使用如下:

public class Deck    
{

public Suit suit;
public Rank rank;

public Deck(Suit suit, Rank rank)
{
this.suit = suit;
this.rank = rank;
}

public Suit getSuit()
{
return this.suit;
}

public Rank getRank()
{
return this.rank;
}
}

我将在我的类、Dealerhand 和 PlayerHand 中使用套牌类。

我的问题如下。我希望能够从一组具有实际纸牌游戏值的纸牌中随机抽取一张纸牌。

我将如何制作实际的数组,以便它与我的枚举一起使用,并且使用数组列表会更好吗?

最佳答案

面向对象的解决方案怎么样?

什么是卡?卡牌是拥有(即实例字段)等级和花色的对象。你目前拥有等级和花色作为你的套牌类别的属性,但我不会这样做。甲板是扑克牌的集合,我将其定义如下:

public class PlayingCard {
private Rank r;
private Suit s;
:
:
}

然后,您可以使用 PlayingCard 对象初始化一个数组。

您可以使用自定义方法洗牌一副牌(包含扑克牌数组),如下所示:

myDeck.shuffle();

关于java - 纸牌游戏、数组和枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18517357/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com