0

与えられたクラス

public class data
{
   public string x;
   public double y;
}

List<data> myList = new List<data>();

リストには、文字列「奇数」、文字列「偶数」のいずれかのデータがそれぞれの数値とともに入力されます。

linq を使用してすべての x = "odd" の合計を取得するにはどうすればよいですか?

これはほとんどの人にとって基本的なことです。私の無知を許してください...

4

5 に答える 5

4

基本的な質問をしているので、ここから始めてください: Standard Query Operators Overview。「関連セクション」の下にあるものはすべてチェックする価値があります。

回答で使用される関数の参照 (例を含む) は次のとおりです: Where(predicate)Sum(selector)

于 2013-08-19T15:52:28.223 に答える
3

Whereのみdataを取得するために使用し、合計を取得するためにx == "odd"使用します。Sum

double sumOdd = myList.Where(d => d.x == "odd").Sum(d => d.y);
于 2013-08-19T15:41:00.667 に答える
3

これを試して

 List<data> myList = new List<data>();
 var odd = myList.Where(p => p.x == "odd").Sum(z => z.y) ;
 var even = myList.Where(p => p.x == "even").Sum(z => z.y) ;
于 2013-08-19T15:41:13.820 に答える
3

次のようなことができます。

var sum = myList.Where(d => d.x == "odd").Sum(d => d.y);
于 2013-08-19T15:43:52.010 に答える
3

パーティーに遅れますが、andを使用する必要はありませ:)WhereSum

dataList.Aggregate(0, (result, next) => result + (next.x == "odd" ? next.y : 0.0));
于 2013-08-19T15:58:13.377 に答える