时间:2021-05-28
假如我们想要从一个整型数组中取出其中是奇数的选项,其实现方式有很多,我们通过下面三种实现方式来对对比理解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表达式使代码更为简洁。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文以实例形式介绍了C#中Lambda表达式的用法,分享给大家供大家参考之用。具体如下:从委托的角度来看,Lambda表达式与匿名方法没有区别。在前面C#基础之
lambda表达式,即带有参数的表达式,为更清晰地理解lambda表达式,先看如下例子:(1)classStudent{privateStringname;pr
什么是Lambda表达式,java8为什么使用Lambda表达式?“Lambda表达式”(lambdaexpression)是一个匿名函数,Lambda表达式基
扩展阅读c#基础系列1---深入理解值类型和引用类型c#基础系列2---深入理解String引言在上篇文章深入理解值类型和引用类型的时候,有的小伙伴就推荐说一说
什么是Lambda表达式“Lambda表达式”(lambdaexpression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的la