如果我翻译这个匿名方法:
Func<int, int> f = delegate(int i)
{
return i + 1;
};
进入 lambda 表达式,它会像这样:
Func<int, int> f = i => i + 1;
(我知道:这个 lambda 表达式会 secret 生成另一个匿名方法(由编译器生成),但这不是重点)。
现在我想将下面的方法翻译成一个 lambda 表达式:
Func<int, int> f = delegate(int i)
{
Debug.WriteLine("Inside the function!");
return i + 1;
};
有什么办法吗?我该怎么做?
最佳答案
Lambda 可以包含多行,这种情况下的语法类似于 C# 2.0 中的匿名委托(delegate):
Func<int, int> f = i =>
{
Debug.WriteLine("Inside the function!");
return i + 1;
};
关于c# - 将匿名方法转换为 lambda 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16297144/