Tag: 二十一点

如何在Java中添加两个“卡”的值?

我正在研究一个模拟二十一点游戏中的第一笔交易的项目。 到目前为止,该程序创建了两张随机排名(ACE to KING)和随机套装的牌。 我正在努力创建一个切换表或if-else梯子将两张卡的附加值分配为可变分数。 下面的代码在概念上代表我想要做的事情,我只是想知道如何使它更简单。 谢谢! public int Score() { int score = 0; if (card1.rank() == TWO && card2.rank() == TWO){ score = 4; } else if (card1.rank() == THREE && card2.rank() == TWO){ score = 5; } else if (card1.rank() == FOUR && card2.rank() == TWO){ score = 6; } else if […]

OOP BlackJack游戏(创建甲板)

我正在尝试创建一个OOP友好的Java BlackJack游戏来提升我的知识。 我碰壁了,我只是不知道看到问题。 想知道是否有人能指出我的问题。 此外,在谷歌搜索相关主题后,我发现人们一次又一次地说使用枚举会更有益,因为初学者会建议吗? 或者我应该暂时坚持使用String数组。 谢谢。 我的代码: public class BlackJack{ BlackJack() { Deck deck = new Deck(); deck.createDeck(); System.out.println(deck.deckList); } public static void main(String[] args) { new BlackJack(); } } public class Card{ private String valueCard; private String suitCard; public Card(String value, String suit) { this.valueCard = value; this.suitCard = suit; } public String […]

为什么我收到此错误? “二元运算符的错误操作数类型’>’”

我想知道它导致“二元运算符’>’的错误操作数类型错误的原因下面我有我的手和卡类的代码。 我还指定了导致错误的行。 谢谢您的帮助。 这是一个BlackJack项目。 手类 import java.util.Vector; public class Hand { private Vector hand; // The cards in the hand. public Hand() { // Create a Hand object that is initially empty. hand = new Vector(); } public void clear() { // Discard all the cards from the hand. hand.removeAllElements(); } public void addCard(PlayingCard c) […]

有没有一种优雅的方式来应对二十一点的王牌?

我的孩子有一个家庭作业,用Java编写Blackjack。 我帮助了他一点但是大部分时间他都是自己做的,而且实际上打得很好。 他甚至发现了一个错误,我没有看到它是如何计算手值的。 然而,有一个他没有处理过的障碍,我能想到的每个解决方案都非常复杂,并且超出了他能够轻松编写他仍然基本的Java技能的能力。 王牌。 事实上,不仅仅是一个Ace,其中有四个,你可以用一只手拿到所有四个。 当有一个或多个A时,你如何优雅地计算一手牌的价值,每个A值可能在一个或十一个值。 我觉得应该有一个优雅的算法,但我没有看到它。 当然,部分原因可能就是我累了,但也许你可以提供帮助。