C#中的Lambda表达式是什么?

王林
发布: 2023-09-08 14:25:15
转载
721人浏览过

c#中的lambda表达式是什么?

Lambda 表达式是表示匿名方法的更好方法。匿名方法和 Lambda 表达式都允许您内联定义方法实现,但是,匿名方法显式要求您定义方法的参数类型和返回类型。

以表达式作为其表达式的表达式 lambda身体: (input−parameters) => 表达式

以语句块作为其主体的语句 lambda: (input−parameters) => { }

任何 lambda 表达式都可以转换为委托类型。 lambda 表达式可以转换为的委托类型由其参数和返回值的类型定义。如果 lambda 表达式不返回值,则可以将其转换为 Action 委托类型之一;否则,它可以转换为 Func 委托类型之一。

static void Main(string[] args){
   Func<int, int> square = x => x * x;
   Console.WriteLine(square(5));
   Console.ReadLine();
}
登录后复制

=> 运算符右侧有一个表达式的 lambda 表达式称为表达式 lambda。表达式 lambda 返回表达式的结果,并采用以下基本形式

Action line = () => Console.WriteLine();

Funccube = x => x * x * x;

Func testForEquality = (x, y) => x == y;

Func isTooLong = (int x, string s) => s.Length > x;

C# 7.0 中,C# 语言提供了对元组的内置支持。您可以提供一个元组作为 lambda 表达式的参数,并且您的 lambda 表达式也可以返回一个元组。

lambda 表达式中引入的变量在封闭方法中不可见。

lambda 表达式无法直接从封闭方法捕获 in、ref 或 out 参数。

lambda 表达式中的 return 语句不会导致封闭方法返回。

如果跳转语句的目标位于 lambda 表达式块之外,则 lambda 表达式不能包含 goto、break 或 continue 语句。如果目标位于 lambda 表达式块内部,则在 lambda 表达式块外部使用跳转语句也是错误的。

以上就是C#中的Lambda表达式是什么?的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:tutorialspoint网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号