Verwenden Sie LINQ, um ein Deck zu mischen
Posted: 15 Feb 2025, 11:52
Ich versuche, ein einfaches Kartenspiel zu schreiben. Um einen guten Mischungsalgorithmus zu finden, stieß ich auf Jeff Atwoods Beitrag zum Codierungs -Horror. sind nicht gemischt.class MainDeck : List
{
public MainDeck()
{
this.Add(new Card(1, "Hearts"));
this.Add(new Card(2, "Hearts"));
this.Add(new Card(3, "Hearts"));
...
this.OrderBy(a => Guid.NewGuid());
}
}
< /code>
Hier ist der Code für Karte: < /p>
class Card
{
string suit;
int value;
public Card(int value, string suit)
{
this.value = value;
this.suit = suit;
}
bool isFaceCard()
{
if (value >= 11 || value == 1)
return true;
else
return false;
}
public override string ToString()
{
return (value +", " + suit);
}
}
< /code>
Was soll ich ändern, damit das Mischen funktioniert? < /p>
{
public MainDeck()
{
this.Add(new Card(1, "Hearts"));
this.Add(new Card(2, "Hearts"));
this.Add(new Card(3, "Hearts"));
...
this.OrderBy(a => Guid.NewGuid());
}
}
< /code>
Hier ist der Code für Karte: < /p>
class Card
{
string suit;
int value;
public Card(int value, string suit)
{
this.value = value;
this.suit = suit;
}
bool isFaceCard()
{
if (value >= 11 || value == 1)
return true;
else
return false;
}
public override string ToString()
{
return (value +", " + suit);
}
}
< /code>
Was soll ich ändern, damit das Mischen funktioniert? < /p>