C# でオブジェクト リスト内の属性の合計を計算するにはどうすればよいですか?
特定のプロパティの合計を計算することは、オブジェクトのリストを操作するときによく必要になります。 C# には配列とリスト用の Sum 関数が用意されており、これを使用すると集計値を簡単に計算できます。
オブジェクトでの Sum の使用を説明するために、次のシナリオを考えてみましょう:
オブジェクトのリストがあり、それぞれに Amount プロパティが含まれている場合、Sum 関数を使用して合計金額を取得するにはどうすればよいでしょうか?
文法の問題
myList.amount.Sum()
を使用しようとすると、構文エラーが発生します。その理由は、リスト自体から資産金額に直接アクセスできないためです。代わりに、リスト内の各オブジェクトの Amount プロパティにアクセスするには、デリゲートまたはラムダ式を指定する必要があります。
解決策
この問題を解決するには、ラムダ式を使用してリスト内の各オブジェクトの Amount プロパティを抽出し、結果として得られる数値のコレクションに Sum 関数を適用します。以下に例を示します:
<code class="language-csharp">using System.Linq; ... double total = myList.Sum(item => item.Amount);</code>
この例では、ラムダ式 item => item.Amount
は myList
内の各項目の Amount プロパティを取得します。次に、Sum 関数は抽出された Amount 値のセットに合計演算を適用し、合計金額を効果的に計算します。
以上がC# でオブジェクトのリストからプロパティの値を合計する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。