C#之Lambda不得不说的用法

本文介绍了C#中Lambda表达式的使用,包括其作为匿名函数的定义、委托与Lambda的关系、Func的结合运用,以及在LINQ查询中的应用和表达式目录树的概念。通过实例展示了Lambda如何简化代码,特别是在遍历、筛选和查找操作中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

   由于我才开始接触代码的时候遇到循环问题都是用foreach和for,慢慢就成了习惯,不愿意用其他简便的方式,偶然发现lambda能代替循环而且简便了很多。当然我用lambda也不是简便,更多是不用不行了,看公司项目很多地方这种用法导致我没有看懂源码,所以索性把关于lambda的知识学习并进行总结。

1:什么是lambda表示式

Lambda 表达式是一种可用于创建委托或表达式目录树的匿名函数(摘自MSDN)这句话是什么意思下面慢慢开始说起

2:我用一张图来表示lambda的组成

 

就是形如(参数)=>{操作}

3:委托和lambda的用法

首先定义三个委托:

private delegate string DelLambda();//没有参数
private delegate void DelLambdaOne(string Param);//一个参数
private delegate int DelLambdaTwo(int Param1, int param2);//两个参数表达多个

A:没有任何参数

public static void NoParam()
{
DelLambda delLambda = () =>
{
return "1"; 
};
Console.WriteLine("我没有参数 返回值:{0}",delLambda());
}

运行结果:

B:只有一个参数的

 public static void OneParam()
        {
            DelLambdaOne delLambdaOne = p =>
            {
                Console.WriteLine(p);
            };
            delLambdaOne("哈哈我只有一个参数");
        }

运行结果:

 

C:2个以上参数

  public static void TwoParam()
        {
            DelLambdaTwo delLambdaTwo = (p1, p2) =>
        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值