gpt4 book ai didi

java - 尝试更改卡的值(value)

转载 作者:太空宇宙 更新时间:2023-11-04 12:55:08 26 4
gpt4 key购买 nike

我正在为学校制作一个二十一点游戏,现在我们正在研究 Hand 类(添加一张牌,并检查用户是否失败/获胜/等)

我正在研究 addCard 方法

/**
* Adds a card from the deck to the hand
*/
public void addCard(Card c)
{
hand.add(c);
if(getHandValue() > 21)
{
for(int i = 0; i < hand.size()-1; i++)
{
if(hand.get(i).equals("Ace") == true && getHandValue() > 21)
{
c.changeAce();
}
}
}
}

我的问题是,当我尝试将 Ace、Two、Ace 添加到我的牌中时,它并没有像应有的那样将值从 11 更改为 1,它仍然将其加起来为 11 2 11,然后告诉我这手牌失败了。

有人能发现问题吗?

谢谢

最佳答案

您正在迭代 i < hand.size()-1这意味着它将跳过最后一个元素,因此最后一个 A 不会被更改。

尝试i < hand.size()

关于java - 尝试更改卡的值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35472772/

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