Wie berechnet man die Summe der Attribute in einer Objektliste in C#?
Das Berechnen der Summe einer bestimmten Eigenschaft ist ein häufiges Bedürfnis bei der Arbeit mit Objektlisten. C# bietet die Sum-Funktion für Arrays und Listen, die die Berechnung von Aggregatwerten vereinfacht.
Um die Verwendung von Sum in Objekten zu veranschaulichen, betrachten Sie das folgende Szenario:
Wie rufen Sie bei einer gegebenen Liste von Objekten, von denen jedes eine Amount-Eigenschaft enthält, den Gesamtbetrag mithilfe der Sum-Funktion ab?
Grammatikprobleme
Der Versuch, myList.amount.Sum()
zu verwenden, führt zu einem Syntaxfehler. Der Grund dafür ist, dass der Immobilienbetrag nicht direkt aus der Liste selbst abgerufen werden kann. Stattdessen müssen Sie einen Delegaten- oder Lambda-Ausdruck angeben, um auf die Amount-Eigenschaft jedes Objekts in der Liste zuzugreifen.
Lösung
Um dieses Problem zu lösen, können Sie einen Lambda-Ausdruck verwenden, um die Amount-Eigenschaft jedes Objekts in der Liste zu extrahieren, und dann die Sum-Funktion auf die resultierende Sammlung numerischer Werte anwenden. Hier ist ein Beispiel:
<code class="language-csharp">using System.Linq; ... double total = myList.Sum(item => item.Amount);</code>
In diesem Beispiel ruft der Lambda-Ausdruck item => item.Amount
die Amount-Eigenschaft jedes Elements in myList
ab. Die Sum-Funktion wendet dann eine Summenoperation auf den extrahierten Satz von Betragswerten an und berechnet so effektiv den Gesamtbetrag.
Das obige ist der detaillierte Inhalt vonWie summiere ich die Werte einer Eigenschaft aus einer Liste von Objekten in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!