C#怎么使用Lambda表达式 C#匿名函数使用方法

admin 百科 16
Lambda表达式是C#中定义匿名函数的简洁语法糖,本质为编译器生成委托或表达式树,基本形式为(参数列表)=>表达式或语句块,广泛用于委托、事件和LINQ查询。

C#怎么使用Lambda表达式 C#匿名函数使用方法-第1张图片-佛山资讯网

在C#中,Lambda表达式是编写匿名函数最简洁、最常用的方式,本质是编译器帮你生成委托实例或表达式树,用 =>(“goes to”)语法快速定义内联方法。

Lambda表达式基本写法

语法结构为:(参数列表) => 表达式或语句块。参数类型通常可省略(由编译器推断),单个参数时括号也可省略。

  • 无参 + 单表达式:`() => Console.WriteLine("Hello")`
  • 一个参数 + 省略括号:`x => x * 2`(等价于 `(int x) => x * 2`)
  • 多个参数:`(x, y) => x + y`
  • 多语句块:`(name, age) => { Console.WriteLine(name); return age > 18; }`(必须用花括号和 return)

常用于委托和事件处理

Lambda让注册回调变得非常轻量,尤其配合 ActionFunc 等泛型委托使用。

  • 作为 Action:`List.ForEach(x => Console.Write(x + ", "))`
  • 作为 Func<t bool></t> 过滤:`var adults = people.Where(p => p.Age >= 18)`
  • 绑定事件:`button.Click += (s, e) => MessageBox.Show("Clicked!");`

与LINQ查询高度配合

几乎所有 LINQ 方法(WhereSelectOrderByAny 等)都接受 Lambda 作谓词或投影函数,代码直观易读。

标签: go c# 作用域

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~