在C#中,where
关键字用于在LINQ查询中指定一个或多个筛选条件。它可以用于筛选集合中的元素,只返回满足指定条件的元素。
where
关键字的基本语法是:
var result = from item in collection
where condition
select item;
或者使用方法语法:
var result = collection.Where(item => condition);
其中,item
表示集合中的每个元素,condition
是一个布尔表达式,用于筛选元素。
以下是一些使用where
的示例:
// 从整数集合中筛选出大于5的元素
var numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var result = numbers.Where(n => n > 5);
// 从字符串数组中筛选出长度大于等于5且以大写字母开头的字符串
var strings = new string[] { "Apple", "banana", "cherry", "Orange", "grape" };
var result = strings.Where(s => s.Length >= 5 && char.IsUpper(s[0]));
// 从自定义对象集合中筛选出满足特定条件的对象
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
var people = new List<Person>
{
new Person { Name = "Alice", Age = 25 },
new Person { Name = "Bob", Age = 30 },
new Person { Name = "Charlie", Age = 35 }
};
var result = people.Where(p => p.Age > 30);
这些示例中,where
关键字被用于筛选出满足特定条件的元素,并将它们放入一个新的集合中。