C# Lambda表达式用途深入理解
C# Lambda表达式用途深入理解
发布时间:2016-12-29 来源:查字典编辑
摘要:假如我们想要从一个整型数组中取出其中是奇数的选项,其实现方式有很多,我们通过下面三种实现方式来对对比理解Lambda表达式的用途方法一:命名...

假如我们想要从一个整型数组中取出其中是奇数的选项,其实现方式有很多,我们通过下面三种实现方式来对对比理解Lambda表达式的用途

方法一:命名方法

复制代码 代码如下:

public class Common

{

public delegate bool IntFilter(int i);

public static List<int> FilterArrayOfInt(int[] ints, IntFilter filter)

{

var lstOddInt = new List<int>();

foreach (var i in ints)

{

if (filter(i))

{

lstOddInt.Add(i);

}

}

return lstOddInt;

}

}

复制代码 代码如下:

public class Application

{

public static bool IsOdd(int i)

{

return i % 2 != 0;

}

}

调用:

复制代码 代码如下:

var nums = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

var oddNums = Common.FilterArrayOfInt(nums, Application.IsOdd);

foreach (var item in oddNums)

{

Console.WriteLine(item); // 1,3,5,7,9

}

方法二:匿名方法

复制代码 代码如下:

var oddNums = Common.FilterArrayOfInt(nums, delegate(int i) { return i % 2 != 0; });

方法三:Lambda表达式

复制代码 代码如下:

var oddNums = Common.FilterArrayOfInt(nums, i => i % 2 != 0);

很显然,使用Lambda表达式使代码更为简洁。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新asp.net教程学习
热门asp.net教程学习
编程开发子分类