深入理解LINQ查询:从基础到高级应用
1. 使用OfType ()过滤数据
在处理非泛型集合时,由于其成员可以是任意类型,有时我们需要从其中提取特定类型的数据。这时可以使用 OfType<T>()
方法。例如,假设一个 ArrayList
包含多种类型的元素,我们想从中提取所有的整数:
static void OfTypeAsFilter()
{
// Extract the ints from the ArrayList.
ArrayList myStuff = new ArrayList();
myStuff.AddRange(new object[] { 10, 400, 8, false, new Car(), "string data" });
var myInts = myStuff.OfType<int>();
// Prints out 10, 400, and 8.
foreach (int i in myInts)
{
Console.WriteLine("Int value: {0}", i);
}
}
这个方法在迭代过程中会过滤掉类型与指定类型不同的元素,只返回符合类型要求的元素。
2. C# LINQ查询操作符
C# 提供了许多内置的查询操作符,下面是一些常用操作符及其含义:
| 查询操作符 | 含义 |
| — | — |