CodeGym
AI Academy
促销
CodeGym University
学习
课程
任务
调查 & 测验
游戏
帮助
日程
社区
Users
论坛
聊天
文章
成功故事
动态
评价
订阅
浅色主题

课时

  • 评论
  • 关于我们
开始
开始学习
立即开始学习
  • 我的进度
  • 课程
  • 任务地图
  • 课程
  • Lambda 表达式:语法与作用域

    JAVA 25 SELF
    等级 48,课时 0
    复习并深入理解 Java 中的 Lambda 表达式:语法(参数、箭头 ->、主体),省略括号与 return 的简写形式,与函数式接口( Comparator、 Runnable、 Consumer)的关系,以及关于列表、流和 Stream API 的日常示例。讲解作用域与“有效 final”规则,Lambda 与匿名类中 this 的差异,以及常见错误与规避方法。
    可用
  • 在集合与流(Stream)中使用 Lambda

    JAVA 25 SELF
    等级 48,课时 1
    在集合和 Stream API 中实践 Lambda 表达式:如何用精炼的 Lambda 替换匿名类,使用集合的方法( forEach、 removeIf、 sort、 replaceAll),并搭建数据处理流水线( stream → filter → map → sorted → collect)。我们将与匿名类进行对比,讨论“有效的 final”(effectively final)变量,给出主要操作的对照表,并分析常见错误。
    可用
  • Lambda 表达式的优缺点

    JAVA 25 SELF
    等级 48,课时 2
    在本讲中,我们讨论 Java 为什么引入了 Lambda 表达式:简洁与可读性、将行为作为参数传递、与集合及 Stream API( filter、 map、 forEach)的集成、对“有效” final 变量的捕获,以及通过运算符 -> 编写回调的便捷方式。与此同时,我们也会看看潜在的陷阱:调试长链、重载的歧义( Runnable vs Callable)、闭包限制、序列化以及嵌套的 Lambda。最后——何时使用 Lambda 的实用建议与常见错误解析。
    可用
  • Java 中的闭包(closure):要点

    JAVA 25 SELF
    等级 48,课时 3
    本讲将讲解什么是闭包以及它在 Java 中如何工作:lambda 和匿名类如何“捕获”外部变量,为什么局部变量必须是 final 或“有效 final”,捕获局部变量与访问类字段有何不同,以及 this 在 lambda 与匿名类中的行为。我们将展示使用 IntSupplier 的函数工厂,解析捕获的内部实现和常见错误(例如编译器消息 Variable used in lambda expression should be final or effectively final)。
    可用
  • 匿名类:与 Lambda 的区别与示例

    JAVA 25 SELF
    等级 48,课时 4
    在本讲座中,我们将讲解什么是 Java 中的匿名类,它与 Lambda 表达式有何不同:语法、能力(字段、附加方法、重写 toString/ equals)、作用域与 this 的行为、变量捕获(仅限 final/“有效 final”)。展示了基于 Runnable、 Comparator、 Predicate 的实践示例,并给出建议——何时选择 Lambda,何时选择匿名类。
    可用
Learn
  • 注册
  • Java 课程
  • 任务帮助
  • 定价
  • Java 语法
社区
  • 用户
  • 文章
  • 论坛
  • 聊天
  • 成功故事
  • 动态
  • 联盟计划
Company
  • 关于我们
  • 联系方式
  • 评价
  • 媒体中心
  • CodeGym for EDU
  • 常见问题
  • 支持
CodeGymCodeGym 是一个从零开始学习 Java 编程的在线课程。该课程是初学者掌握 Java 的完美方式。它包含 1200+ 个带即时验证的任务,以及必要的 Java 基础理论。为了帮助你在学习中取得成功,我们实现了一系列激励功能:测验、编码项目、关于高效学习的内容,以及 Java 开发者职业相关内容。
关注我们
界面语言
English Deutsch Español हिन्दी Français Português Polski বাংলা
简体中文
मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
“程序员是培养出来的,不是天生的” © 2026 CodeGym
MastercardVisa
“程序员是培养出来的,不是天生的” © 2026 CodeGym