lambda 表达式 闭包写法

lambda 表达式

1.用于 匿名委托函数表达

2.用于linq 查询表达

匿名方法表达

(参数)=》{ 逻辑}

比如 (x,y)=>{return x+y;}

如果一个参数可不带(),如果逻辑简单可以不{}

比如 x=>x++

如果没有参数可以_来代替

比如=>{}

但是如果需要参数 但是 逻辑又没用 比较特殊 可以使用_

_=>{}

linq 表达 比 linq表达式要更简便

list.where(t=>t.name='')

闭包

就是lambda表达式 引用了方法体外变量 调用的时候并不知道 可以延长变量生命周期

javascript 复制代码
private static void Main()
        {
            // 闭包解释
            int y= 10;
            Func<int,int> action = (x) =>
            {
                return x+ y;
            };
            Console.WriteLine(action(1));
        }
相关推荐
军训猫猫头1 小时前
52.this.DataContext = new UserViewModel(); C#例子 WPF例子
开发语言·c#·wpf
AI+程序员在路上5 小时前
C#调用c++dll的两种方法(静态方法和动态方法)
c++·microsoft·c#
数据的世界016 小时前
C#中的语句
服务器·c#
装疯迷窍_A7 小时前
ARCGIS国土超级工具集1.3更新说明
arcgis·c#·插件·变更调查·尖锐角·狭长
秋月的私语9 小时前
c#实现当捕获异常时自动重启程序
运维·c#
叫我少年13 小时前
C# 中使用 gRPC 通讯
c#·grpc·类库封装
步、步、为营13 小时前
C# 通用缓存类开发:开启高效编程之门
缓存·c#·.net
军训猫猫头13 小时前
54.DataGrid数据框图 C#例子 WPF例子
ui·c#·wpf
Maybe_ch14 小时前
ASP.NET Blazor部署方式有哪些?
后端·c#·asp.net·blazor
规划GIS会15 小时前
【ArcGIS Pro二次开发】(86):C#问号运算符(?)的用法
c#