4

私は次のようなクラスを持っています

public class MyClass
{
  public float Consumed { get; set;}
  public int RequiredValue { get; set;}
}

このクラスのリスト

List<MyClass> list

すでに、「RequiredValue」(3、5、6、8、10など)と「Consumed」プロパティの対応する値を含むMyClassタイプのアイテムがいくつかあります。次のコードを使用して、1〜10の範囲で欠落している値を見つけました。

var missingValues = Enumerable.Range(1, 10).Except(list.Select(p1 => p1.RequiredValue));

Linqを使用して「リスト」にアイテムを追加し、新しいアイテムの「RequiredValue」と「Consumed」の値が0になるようにします。

4

1 に答える 1

5

これにより、オブジェクトが生成され、コレクションに追加されます(Consumedプロパティはデフォルト値としてすでにゼロになっているため、初期化する必要はありません)。

list.AddRange(Enumerable.Range(1, 10)
                        .Except(list.Select(m => m.RequiredValue))
                        .Select(i => new MyClass() { RequiredValue = i } );
于 2012-11-09T11:03:53.407 に答える