首先创建一个数组

class Person
{
    public int ID { set; get; }
    public string Name { set; get; }
    public int Age { set; get; }
    List<Person> _person = new List<Person>()
    {
       new Person() {ID = 0,Name = “0”,Age = 0 },
       new Person() {ID = 1,Name = “1”,Age = 1 },
       new Person() {ID = 2,Name = “2”,Age = 2 }
    };
}

Person match = _person.Find((Person p) => { return p.ID == 2; });
Debug.Log(match.Name);

 

  • 圆括号中的参数列表。和普通方法一样,即使Lambda表达式代表的方法不获取任何参数,也要提供一对空白圆括号。对于Find方法,谓词要针对集合中的每一项运行,该项作为参数传给Lambda表达式。

  • =>操作符,它向C#编译器指出这是一个Lambda表达式。

  • Lambda表达式主体(方法主体)。本例的主体很简单,只有一个语句,返回Boolean值来指出参数所指定的项是否符合搜索条件。然而,Lambda表达式完全可以包含多个语句,而且可以采用最易读的方式来排版。

  • Find语句简化版 Person match = _person.Find(p=>p.ID == 2);