在C#中,LINQ(Language Integrated Query)提供了强大的过滤能力,允许开发者从数据集合中筛选出满足特定条件的元素。过滤运算符主要包括Where
、OfType
等。下面将详细介绍这些过滤运算符的用法。
运算符 | 描述 | C# 查询表达式语法 |
---|---|---|
Where | 基于谓词函数过滤值 | where |
OfType | 运算符用于从集合中筛选出指定类型的元素。这在处理混合类型的集合时特别有用。 | OfType |
Where运算符用于基于指定的条件表达式筛选出集合中满足条件的元素。它是最常用的过滤运算符之一。
一个例子
C#class Person
{
public string Name { get; set; }
public int Age { get; set; }
public Person(string name, int age)
{
Name = name;
Age = age;
}
}
C#private void btnSearch_Click(object sender, EventArgs e)
{
List<Person> teachers = new List<Person>
{
new Person("张三",38),
new Person("张飞",38),
new Person("李四",38),
new Person("王五",38),
new Person("刘备",38),
new Person("关羽",38),
new Person("曹操",38)
};
//查找姓名中包括"张"的老师
var ret = from it in teachers
where it.Name.Contains("张")
select it;
foreach (var item in ret)
{
lstMain.Items.Add(item.Name);
}
}
一个例子
C#ArrayList mixedList = new ArrayList { 1, "two", 3, "four", 5 };
// 筛选出所有整数类型的元素
var intValues = mixedList.OfType<int>().ToList();
foreach (var val in intValues)
{
Console.WriteLine(val);
}
本文作者:rick
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!