在类列表中查找类元素

Eri*_*ric 5 c# list find

我正在尝试使用"List.Find"方法来查找与我的类中的元素匹配.这是一个例子......

class MyClass
{
    String item1;
    String item2;
}

List<MyClass> myClassList = new List<MyClass>();

// I am trying to find all instances of "MyClass" in the list "myClassList"
// where the element "item1" is equal to "abc"
// myClassList.Find(item => .item1 == "abc"); ?????
Run Code Online (Sandbox Code Playgroud)

无论如何,我希望这解释得更好一点.我对最后一部分感到困惑,所以我的问题是:如何使用List.Find查找类列表中元素的匹配项.

谢谢,如果我不清楚,请告诉我.

Luk*_*keH 12

你的榜样几乎就在那里.你可能应该使用这个FindAll方法:

List<MyClass> results = myClassList.FindAll(x => x.item1 == "abc");
Run Code Online (Sandbox Code Playgroud)

或者,如果您希望将结果输入为IEnumerable<T>而不是List<T>,则可以使用LINQ的Where方法:

IEnumerable<MyClass> results = myClassList.Where(x => x.item1 == "abc");
Run Code Online (Sandbox Code Playgroud)