Linq自学系列(二)

it2022-05-05  100

Lambda表达式 这玩意很复杂的说。慢慢弄 先来个简单的

            var ls  =   new [] {  " a " " ab " " ba " , " c "  };             var rs  =  Array.FindAll(ls, s  =>  (s.IndexOf( " a " >   - 1 ));              foreach  (var s1  in  rs)             { listBox1.Items.Add(s1); } 这里   s => (s.IndexOf("a") > -1)  就是说  在指定的ls字符串数组中筛选含 “a”  的字符串。 语法如下:  ( 参数列表 ) => 表达式或者语句块其中:参数个数:可以有多个参数,一个参数,或者无参数。表达式或者语句块:这部分就是我们平常写函数的实现部分(函数体)。 其中“参数列”中可包含任意个参数(与委托对应),如果参数列中有0个或1个以上参数,则必须使用括号括住参数列,如下: ()=>Console.Write("0个参数") i=>Console.Write("1个参数时参数列中可省略括号,值为:{0}",i) (x,y) =>Console.Write("包含2个参数,值为:{0}*{1}",x,y)

而“语句或语句块”中如果只有一条语句,则可以不用大括号括住否则则必须使用,如下: i=>Console.Write("只有一条语句") i=>{Console.Write("使用大括号的表达式");} //两条语句时必须要大括号 i=>{i++;Console.Write("两条语句的情况");}

 

转载于:https://www.cnblogs.com/wind8250/archive/2008/05/07/1186455.html


最新回复(0)