使用 lambda 表达式有什么意义。
就像在 C# 中一样,foreach 循环可能需要 3-4 行来分配值
使用兰巴
List.foreach(x=>x.something = new value)
我想了解更多关于 lambda 以及它在 C# 中的更高级用法
使用 lambda 表达式有什么意义。
就像在 C# 中一样,foreach 循环可能需要 3-4 行来分配值
使用兰巴
List.foreach(x=>x.something = new value)
我想了解更多关于 lambda 以及它在 C# 中的更高级用法
lambda 表达式更像是一种方法的简写语法。
采用以下 lambda 表达式:
p => p.FullName
这相当于:
string getFullName(Person p)
{
return p.FullName;
}
它的用法允许您创建匿名函数。所以一个接受委托的方法将被定义为:
public delegate string FullNameDelegate(Person p);
public void DoSomething(FullNameDelegate getter)
{
Person p = new Person();
string fullname = getter(p);
}
public string GetFullName(Person p)
{
return p.FullName;
}
DoSomething(new FullNameDelegate(GetFullName));
lambda 等效项是:
public void DoSomething(Func<Person, string> getter)
{
Person p = new Person();
string fullname = getter(p);
}
DoSomething(p => p.FullName);