我刚刚购买了Xamarin学生版,并在开始教程中阅读。
我找到了这个代码示例
lambda表达式,如下例所示:
aButton.Click += (sender, e) => {
aLabel.Text = "Hello from the button";
};
相反,我们可以使用带有委托语法的C#2.0匿名方法:
aButton.Click += delegate(object sender, EventArgs e) {
aLabel.Text = "Hello from the button";
};
来源为here
我的问题是
我何时或为何要使用委托(是的,我确实阅读了C#文档)
在这种情况下哪个更好?一个lambda或代表?
要明确:代码没有任何问题,我无法找出为什么要使用第一种或第二种方法。
答案 0 :(得分:4)
没有区别!
C#2.0附带了匿名方法。 Labmda附带了C#3.0。
Labmda只是创建匿名方法(或根据上下文的表达式树)的简短形式。