我正在设计一款名为 Snap 的纸牌游戏(这里有一个显示规则的链接http://boardgames.about.com/od/cardgames/a/snap.htm),在我的版本中,玩家必须点击如果一对出现在中间。我目前有 4 个类,一个用于卡片(这是一个名为 cardValue_ 的 int),一个用于玩家手牌,一个用于原始纸牌,一个用于中间的一堆卡片。所以 Deck、Pile 和 Hand 类中有一个卡片列表。我现在正在尝试为包含卡片列表的 Deck 类编写一个 shuffle 方法。它将随机选择一张卡片并将其移动到新列表,直到所有卡片都被挑选出来,然后将它们移回原始列表,从而进行简单的洗牌。到目前为止,我的方法看起来像这样......
public List<Deck> Shuffle(List<Card> cardDeck)
{
int index = 0;
Random randomCard = new Random();
List<Card> newDeck = new List<Card>();
while (index < cardDeck.Count)
{
int ran = randomCard.Next(0, cardDeck.Count);
foreach (Card card in cardDeck)
{
}
}
}
我正在尝试找出 foreach 循环中应该做什么(除非整个方法是错误的),但现在我想我已经在错误的地方声明了我的所有卡片,所有 52 张卡片当前都在表单中声明,或者应该我要在 Deck 类中声明它们?