关于Lambda表达式
最近看了Lambda表达式的说明,还是有一些不明白。
只说针对委托方面的(表达式树还没有看),MSDN上的代码样例如下。
C# code
delegate int del(int i);
static void Main(string[] args)
{
del myDelegate = x => x * x;
int j = myDelegate(5); //j = 25
}
是不是说Lambda表达式就可以代替函数的某个参数是一个delegate/action/event的类型呢?action/event返回值都是void,那么=>右边的值都返回void。=>代替delegate时,=>左边就是delegate的参数,=>右边就是delegate的返回值。
大概是这么理解吗?有没有比较好的帖子来具体讲解的,在论坛上面没找到。
还有就是Lambda表达式的适用范围。MSDN上没有,一些帖子说是用LINQ时多用这个,有没有更具体的分析什么时候合适用呢?
谢谢。
------解决方案--------------------不只linq使用,lamda表达式其实就是委托
------解决方案--------------------可以当成是匿名委托来理解
------解决方案-------------------- x => x * x; 第一个x 是方法的参数 后边是方法体 Lambda表达式其实是匿名方法