AI Academy
促销
CodeGym University
学习
课程
任务
调查 & 测验
游戏
帮助
日程
社区
Users
论坛
聊天
文章
成功故事
动态
评价
订阅
浅色主题
课时
评论
关于我们
开始
开始学习
立即开始学习
我的进度
课程
任务地图
课程
Java 25
Java 25
级别 30
Stream API 入门:为什么需要流
JAVA 25 SELF
等级 30,
课时 0
在本讲中,我们将讲解为何以命令式方式处理集合会迅速堆满样板代码,以及
Stream API
如何让代码转向声明式风格:由
filter
、
map
、
collect
等操作组成的链式调用,简单的组合、更少的错误,以及通过
parallelStream()
实现的轻量并行。我们还会展示适用场景、发展历史以及应当避免的常见错误。
Stream API 基础操作:map、filter、collect
JAVA 25 SELF
等级 30,
课时 1
逐步认识 Stream API 的基础操作:如何从集合和数组获取流(
stream()
、
Arrays.stream
、
Stream.of
),中间操作(
filter
、
map
、
distinct
)与终端操作(
collect
、
forEach
、
count
)有何区别,以及如何使用
Collectors
(
toList
、
toSet
、
joining
)来收集结果。实践示例、迷你练习与常见错误章节将帮助你快速掌握流水线式数据处理。
Stream API 的子集操作:
distinct
、
limit
、
skip
JAVA 25 SELF
等级 30,
课时 2
在本讲中,我们将讲解用于处理数据子集的三项 Stream API 核心操作:
distinct
(删除重复项)、
limit
(限制元素数量)和
skip
(跳过前若干元素)。你将会看到它们在字符串与对象集合上的效果,
equals
/
hashCode
的实现如何影响
distinct
的结果,如何组合这些操作来做分页与 Top‑N 选取,以及常见的错误有哪些。
forEach、peek 方法:副作用
JAVA 25 SELF
等级 30,
课时 3
在本讲中,我们将解析与副作用相关的流操作:终端操作
forEach
和中间操作
peek
。我们会弄清楚何时以及为何使用它们、它们有何不同、为什么在
forEach
之后流会“关闭”,而
peek
不会修改数据,并且只有在存在终端操作时才会执行。我们将展示实践示例,剖析不明显的点和典型错误(包括
ConcurrentModificationException
,以及把
collect
错误替换为
forEach
的情况)。
通过 Stream 转换集合
JAVA 25 SELF
等级 30,
课时 4
使用
Stream API
转换集合的实用指南:
List
↔
Set
的相互转换,通过
Collectors.toMap()
构建映射(包含重复项处理)、使用
Collectors.joining()
拼接字符串,解析终端操作与中间操作(
forEach
、
collect
、
count
、
anyMatch
等)。内含清晰示例、解释与常见错误。
Please enable JavaScript to continue using this application.