【介绍】
最近接触linq语句,然后有一种形式是lambda表达式,可以让代码像数据一样传送,这样就会很简洁,清晰。用基本的操作符“=>”来表示,读作“goes to”;
我们在平常使用时,在 Lambda 运算符 =>左侧指定输入参数,然后在另一侧输入表达式或语句块。 例如,lambda 表达式 x => x * 4指定名为 x 的参数并返回 4x 的值。
【应用】:
namespace lambda
{
public class Person
{
public string Name { get; set; }
public int Age { get;set; }
}
class Program
{
public static List<Person> PersonsList()
{
List<Person> persons = new List<Person>();
for (int i = 0; i < 7; i++)
{
Person p = new Person() { Name = i + "儿子", Age = 8 - i, };
persons.Add(p);
}
return persons;
}
static void Main(string[] args)
{
List<Person> persons = PersonsList();
persons = persons.Where(p => p.Age > 6).ToList(); //所有Age>6的Person的集合
Person per = persons.SingleOrDefault(p => p.Age == 1); //Age=1的单个people类
persons = persons.Where(p => p.Name.Contains("儿子")).ToList(); //所有Name包含儿子的Person的集合
}
}
}