其实就是对于集合的一系列遍历操作。下例中,from,where,select就相当于foreach的遍历。
可以看出,Lambda表达式方式很是精简,记得在二开中,搞各种List,又要新建,又要循环什么的,多学一招,省很多力。
Person p1 = new Person("A", 18);
Person p2 = new Person("B", 19);
Person p3 = new Person("C", 20);
Person p4 = new Person("D", 18);
Person p5 = new Person("E", 19);
Person p6 = new Person("F", 20);
Person p7 = new Person("G", 18);
var newList = new List<Person>() { p1, p2, p3, p4, p5, p6, p7 };
//Linq方式:
var pList = from person in newList
where person.Age > 19
select person.Name;
// select person.Name这里也可以直接选择属性,那pp就是Name的集合了,而不是人的集合
//说到一个匿名类型: select new { person.Name};
foreach (var a in pList)
{
Console.WriteLine(a);//Console.WriteLine(a),这里的a就直接是Name了。
}
//Lambda表达式:
var personList = newList.Where(x => x.Age > 19).Select(x => x.Name).ToList();
personList.ForEach(x => Console.WriteLine(x));
Console.ReadLine();