Java 1.8 Stream 流
一则或许对你有用的小广告
欢迎加入小哈的星球 ,你将获得:专属的项目实战 / 1v1 提问 / Java 学习路线 / 学习打卡 / 每月赠书 / 社群讨论
- 新项目:《从零手撸:仿小红书(微服务架构)》 正在持续爆肝中,基于
Spring Cloud Alibaba + Spring Boot 3.x + JDK 17...
,点击查看项目介绍 - 《从零手撸:前后端分离博客项目(全栈开发)》 2 期已完结,演示链接: http://116.62.199.48/
截止目前, 星球 内专栏累计输出 72w+ 字,讲解图 3103+ 张,还在持续爆肝中.. 后续还会上新更多项目,目标是将 Java 领域典型的项目都整一波,如秒杀系统, 在线商城, IM 即时通讯,权限管理,Spring Cloud Alibaba 微服务等等,已有 2400+ 小伙伴加入学习 ,欢迎点击围观
Java 1.8 引入了 Stream API,它是处理集合数据的新方式,提供了更加便捷、高效、灵活的操作方法。Stream API 是函数式编程的一部分,它允许开发者以声明式的方式对数据进行处理,而无需关心具体的实现细节。
什么是 Stream?
Stream 是一个来自数据源的元素队列,并支持聚合操作。它是用于对集合数据(包括列表、集合、数组等)进行操作的工具。Stream API 可以让你以一种更加简洁和可读性强的方式处理数据。
Stream API 不直接修改数据源,而是通过将操作应用于 Stream 上来返回新的 Stream,并保留原有数据源的不变性。
Stream 的特点
Stream API 具有以下几个重要的特点:
- 声明式:你可以以声明式的方式编写代码,描述要完成的任务,而无需关心具体的实现细节。
- 可复用:Stream 是可以复用的,你可以对同一个数据源进行多次操作。
- 惰性执行:Stream 的操作是惰性执行的,只有在最终需要结果时才会执行,这样可以避免不必要的计算。
- 并行处理:Stream API 支持并行处理,可以充分利用多核处理器的性能。
使用 Stream
使用 Stream API 分为三个步骤:
- 获取数据源:你可以从列表、集合、数组等数据源中获取一个 Stream 对象。
- 中间操作:对获取的 Stream 进行中间操作,例如筛选、映射、排序等。
- 终端操作:对中间操作后的 Stream 进行终端操作,例如转换成一个新的集合等。
让我们开始步入学习的旅程吧!Go !
章节目录 |
---|
1. Filter 过滤 |
2. Sorted 排序 |
3. Map 转换 |
4. Match 匹配 |
5. Count 计数 |
6. Reduce 规约 |