AI Academy
促销
CodeGym University
学习
课程
任务
调查 & 测验
游戏
帮助
日程
社区
Users
论坛
聊天
文章
成功故事
动态
评价
订阅
浅色主题
课时
评论
关于我们
开始
开始学习
立即开始学习
我的进度
课程
任务地图
课程
C#
C#
级别 49
认识匿名方法(
delegate
)
C# SELF
等级 49,
课时 0
C# 里的匿名方法是一种在原地传递行为的简洁方式,不需要定义有名的方法。讲座里我们会讲通过 delegate 来工作的匿名方法,把它们和 lambda 表达式做对比,看看闭包(捕获变量),并分析常见陷阱,比如循环里的问题。会有很多示例:过滤、排序、集合处理。
Lambda 表达式的语法 (
=>
)
C# SELF
等级 49,
课时 1
我们来看看 C# 的 lambda 表达式:从基本语法 (
=>
) 到在集合、事件和标准委托
Action
,
Func
,
Predicate
中的实际用法。会把它和匿名方法、命名方法做个对比,看看带
return
的块状 lambda,顺便找找常见的坑。
集合里的 lambda 表达式和
LINQ
C# SELF
等级 49,
课时 2
关于在 C# 中把 lambda 表达式和
LINQ
用到集合里的实战指南:过滤、投影、排序、计数和条件检查。我们会看标准委托
Func
,
Action
,
Predicate
,演示链式查询,并聊聊常见坑,比如延迟执行和结果的物化。
lambda 表达式的优点和缺点
=>
C# SELF
等级 49,
课时 3
我们来拆解一下为什么需要 C# 的 lambda 表达式,它们的强项和弱点:在 LINQ 中的简洁性和表达力、closure(闭包)、回调和可测试性——还有调试难、可读性问题、变量捕获以及性能问题。会给出实践例子、典型错误和建议,什么时候用 lambda 合适,什么时候用命名方法更好。
变量捕获 (
Closures
)
C# SELF
等级 49,
课时 4
我们来拆解一下 C# 中的闭包是什么,编译器如何通过 display class 实现变量捕获,为什么变量是按引用捕获,以及如何在循环、事件、异步代码和 LINQ 中避免典型陷阱。包含示例、说明和实用场景。
Please enable JavaScript to continue using this application.