Skip to main content
 首页 » 编程设计

C# Linq 类搜索之如何过滤对象集合

2024年01月26日29webabcd

请问如何使用Linq过滤对象集合中的特定类?

Class1 c1 = new Class1(); 
Class2 c2 = new Class2(); 
List<object> c = new List<object>(); 
c.Add(c1); 
c.Add(c1); 
c.Add(c2); 

我正在寻找这样的东西:

c.Select(); 
// or 
IEnumerable<object> x = from y in c; 

感谢您的回复。非常感谢。

请您参考如下方法:

您可以使用 OfType<T>为此。

var results = c.OfType<Class1>(); 

这个

Console.WriteLine (c.OfType<Class1>().Count()); 

结果

2

作为旁注:.Select()不选择任何东西。好吧,在某种程度上它确实如此:它“选择”每个元素并将其投影到一个新对象。但它不会根据某些标准选择对象。对于值,有 .Where()同样选择器和.OfType<T>用于类型选择。