我对编程还比较陌生,所以这让我很困惑。在此程序中,我声明并实例化了5张卡片空插槽的数组(来自名为Card.java的程序,其中所有卡片均已完成)。这是我的构造方法:
public BasicPlayer()
{
myHand = new Card[5];
}
然后,我应该为数组(我假设的getter和setter)声明一个高级的mutator和accessor方法,这就是我遇到的问题。对于accessor方法,我应该从玩家手中得到一张牌:
public Card getCard()
{
card tempCard = myHand [numberDealt];
numberDealt ++;
return tempCard;
}
但是对于mutator方法,我应该在玩家的手中设置一张SINGULAR CARD(我将在不同的类中创建一个循环,在手中放置更多的卡,但是现在,我只需要一张)。这就是我被困住的地方。我应该做些什么?
// setters typically don't return anything.
// and idx must satisfy 0 <= idx < myHand.length
public void setCard(int idx, Card card) {
myHand[idx] = card;
}
但是,我注意到您使用其他方法
public Card getCard() {
Card tempCard = myHand [numberDealt];
numberDealt ++;
return tempCard;
}
请注意numberDealt增量。如果超过4,您将抛出基于索引的Exception,用于超出数组大小。你如何处理这个由您决定。