В настоящее время работает над написанием кода для Windows Forms версии карточной игры war.Мне нужен был способ перемешать список, чтобы рандомизировать колоду.Я уже определил списки для deck и shuffledDeck как список строк.
Когда я запускал createDeck (), он выводил его в текстовое поле в моей форме Windows, чтобы убедиться, что оно создает список правильно,У меня также был тест, чтобы убедиться, что deck.Count () был равен 52
private void shuffle()
{
createDeck();
shuffledDeck = deck;
Random r = new Random();
int randomIndex = 0;
while (deck.Count > 0)
{
randomIndex = r.Next(0, deck.Count);
shuffledDeck.Add(deck[randomIndex]);
deck.RemoveAt(randomIndex);
}
Это мое тестирование, что колода на самом деле перетасовывается
for (int a = 0; a <= 51; a++)
{
textBox1.Text += " " + shuffledDeck[a];
}
Я ожидал бы, чтоЯ бы видел перетасованную колоду каждый раз, однако всякий раз, когда я ее запускаю, Visual Studio зависает, и мне приходится принудительно выходить из программы.