ArrayList C#包含方法查询

Nid*_* KR 2 c# observablecollection

我有一份ObservableCollection<myClass>清单.它包含10个类型的对象MyClass.

class MyClass
{
  string name;
  int age;
}
Run Code Online (Sandbox Code Playgroud)

如果我想查找列表中的所有项目age = 10,我可以使用该Contains方法吗?如果是,如何在不使用迭代的情况下执行此操作?

Rei*_*aka 6

var age10 = list.Where(i => i.age == 10);
Run Code Online (Sandbox Code Playgroud)

这里有更多的查询:http://msdn.microsoft.com/en-us/vcsharp/aa336746.aspx


Jon*_*eet 5

不,Contains只查找特定值,而不是匹配谓词.它也只找到一个值而不是每个匹配值.

但是,您可以使用Where从LINQ到Objects,假设您使用的是.NET 3.5或更高版本:

foreach (var item in list.Where(x => x.Age == 10))
{
    // Do something with item
}
Run Code Online (Sandbox Code Playgroud)