3.7.3 在Lambda中使用多语句块 在上一个示例的Lambda表达式中,只处理了一行语句,也可以为Lambda表达式添加多行语句。例如将上面的示例稍加更改,为Lambda表达式添加多个语句块。为了更好地演示示例,这里添加一个新的方法,命名为FindListLambdaMultiStatements。方法的代码如下所示: - //Lambda表达式和多语句的语句块
- static void FindListLambdaMultiStatements()
- {
- //先创建一个泛型的List类
- List<string> list = new List<string>();
- list.AddRange(new string[] {"语言书", "软件书",
"政治", "图书", "开发人员" }); - //在这里,使用了Lambda来创建一个委托方法
- List<string> bookCategory = list.FindAll(
- (str) =>
- {
- Console.WriteLine("要比较的字符串是:{0}",str);
- return str.EndsWith("书");
- }
- );
- foreach (string str in bookCategory)
- {
- Console.WriteLine("{0}\t", str);
- }
- }
可以看到要添加多语句块,只需要在=>符号后面添加一对花括符,将多个语句添加在花括符里面并以分号分隔即可,与普通的编写代码没有任何区别。程序的运行效果如图3.21所示。 | (点击查看大图)图3.21 Lambda表达式多语句块执行结果 |
【责任编辑: 云霞 TEL:(010)68476606】
|