Ich bin neu hier und ich würde etwas Hilfe bei der Liste wie ...Holen Sie sich alle Elemente Wert von Liste <x, y>
Eigentlich habe ich alle y
Elemente meiner List<x, y>
auf eine Variable hinzufügen möchten. Ich weiß, es ist wahrscheinlich sehr einfach, aber ich bin fest auf dem Teil ..
/// <summary>
/// Number of cards in the deck
/// </summary>
public byte NbTotalCards
{
get
{
byte nbCards = 0;
for (byte i = 0; i <= this.LstCardsWithQt.Count; i++)
{
if (this.LstCardsWithQt[i].Qt != 0)
{
if(this.LstCardsWithQt[i].Qt.Equals(2))
nbCards += 2;
else
{
nbCards += 1;
}
}
else
{
nbCards += 0;
}
}
return nbCardss;
}
}
Wo
public List<DeckEntry> LstCardsWithQt
und
public DeckEntry(Card card, byte qt)
{
this.Card = carte;
this.Qt = qt;
}
btw, ich einen Fehler auf this.LstCardsWithQt[i].Qt != 0
ArgumentOutOfRangeExeption ("Index war außerhalb des zulässigen Bereichs. Muss nicht negativ sein und kleiner als die Größe der Sammlung ")
In der For-Schleife sollten Sie <= zu <ändern, da es nur Anzahl Elemente hat. – hazjack
Sind Sie sicher, dass Sie "nbCards" nur um 1 erhöhen möchten, wenn das "Qt" eines Elements 3 oder mehr ist? Und warum das 'nbCards + = 0;' line? Es macht nichts Sinnvolles. Und warum 'Equals' verwenden, um Bytes anstelle von' == 'zu vergleichen? –
Keine Liste. Liste –
Paparazzi