- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
您好,我正在尝试创建一款视频扑克游戏。这是我到目前为止所拥有的一部分(为了节省空间,我没有包括枚举、导入、变量、toStrings 等):
My Card 类定义我们的卡片:
public Card(Value value, Suit suit) {
this.value = value;
this.suit = suit;
}
我的 Deck 类创建一副 52 张牌的牌组,并在 draw()
方法中返回 5 张牌的手牌:
private ArrayList<Card> deck = new ArrayList<Card>();
private ArrayList<Card> hand = new ArrayList<Card>();
private final int HANDSIZE = 5;
public Deck() {
for(Suit suit : Suit.values()) {
for(Value value : Value.values()){
Card card = new Card(value, suit);
deck.add(card);
}
}
}
public ArrayList<Card> draw() {
Random rng = new Random();
for(int i = 0; i < HANDSIZE; i++){
int getCard = rng.nextInt(deck.size());
Card addCard = deck.get(getCard);
hand.add(addCard);
deck.remove(getCard);
}
return hand;
}
我的玩家类可以提供有关我们玩家的信息。
public class Player extends Deck {
private String name;
private int chips;
public Player(String name, int chips) {
this.name = name;
this.chips = chips;
}
问题是每个玩家都使用自己的牌组,因此有时两个或更多不同的玩家可能拥有相同的牌。我的问题是如何设置我的程序以使每个玩家使用相同的牌组?谢谢。
输出示例:
Name: John Doe, Cash: 500 [Jack of Hearts, Ten of Hearts, Two of Diamonds, Ace of Clubs, Nine of Diamonds]
Name: Jane Doe, Cash: 500 [King of Spades, Two of Diamonds, Jack of Hearts, Ace of Spades, Seven of Diamonds]
最佳答案
不要让 Player 类扩展 Deck。这基本上是让玩家使用自己(在某种程度上),而你让他们自己“拥有”一套牌组。因此,需要单独使用Deck类。
在 Player 构造函数中传递 Deck 实例,如下所示:
public class Player {
private String name;
private int chips;
private Deck deck;
public Player(String name, int chips, Deck deck) {
this.name = name;
this.chips = chips;
this.deck = deck;
}
}
关于java - 我的 Java 扑克游戏中的每个玩家都使用自己的牌组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24900525/
我知道每当人们把作业放在这里时,每个人都会持怀疑态度,但我已经没有选择了,真的可以使用一些指导。我有一个项目,我必须创建一副牌并允许用户选择手牌的大小,然后用随机牌填充该手牌并将其显示给用户。我使用
我是一名优秀的程序员,十分优秀!