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

课时

  • 评论
  • 关于我们
开始
开始学习
立即开始学习
  • 我的进度
  • 课程
  • 任务地图
  • 课程
  • flatMap 和 mapMulti 方法

    JAVA 25 SELF
    等级 32,课时 0
    在本讲中,我们将讲解通过 map 进行的数据转换、用于“扁平化”的 flatMap,以及自 Java 16+ 起提供的更高效替代方案 — mapMulti。通过实用示例直观展示如何把嵌套集合解包为 Stream<String>(而不是 Stream<Stream<String>>)、如何通过 Optional 的 stream() 进行处理,以及在不创建中间流的情况下,为了性能何时选择 mapMulti。
    可用
  • join、concat 方法:合并流

    JAVA 25 SELF
    等级 32,课时 1
    本讲将讲解在 Stream API 中合并数据的方法:用于两个流的静态方法 Stream.concat,针对任意数量流的组合 Stream.of + flatMap,以及把元素粘合为一个字符串的收集器 Collectors.joining。我们会讨论惰性、流的一次性、顺序保持以及常见错误(重复使用同一流、无限流、对非字符串使用 joining)——配有直观示例。
    可用
  • 集合的 union、intersection、difference 操作

    JAVA 25 SELF
    等级 32,课时 2
    在本讲中,我们将讲解 Java 中对集合的常见操作:并集( union)、交集( intersection)和差集( difference),基于接口 Set 与 Stream API。展示了使用 Stream.concat、 Stream.of + flatMap 的实战示例,以及通过 retainAll/ removeAll 的替代方案,并强调了关于 equals/ hashCode、性能与常见错误的重要细节。
    可用
  • zip(拉链),流的生成(iterate、generate)

    JAVA 25 SELF
    等级 32,课时 3
    在本讲中我们将弄清什么是zip,以及为什么标准的 Stream API(直到 Java 22)里没有它;学习如何通过索引使用 IntStream.range 来“缝合”集合,并使用 Stream.iterate 和 Stream.generate “即时”创建流。示例、可视化和常见错误会帮助你在任务中自如地应用生成与 zip。
    可用
  • 流式处理常见错误解析

    JAVA 25 SELF
    等级 32,课时 4
    Java 中 Stream API 常见错误的详细指南:流的一次性特性与重复终止操作( collect()、 forEach()、 count())、遍历期间修改集合、在无限流( iterate、 generate)上忘记使用 limit()、对 null 的处理以及通过 flatMap(Optional::stream) 使用 Optional、用 forEachOrdered() 保持顺序、用 Set 高效进行集合运算、正确关闭资源( Files.lines + try-with-resources)、谨慎使用 parallelStream(),以及“没有终止操作就不会执行”的原则。所有问题都配有清晰的示例与修正。
    可用
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