Java 1.8 Stream 流

更新时间 2023-08-03 13:09:03

一则或许对你有用的小广告

欢迎加入小哈的星球 ,你将获得:专属的项目实战 / Java 学习路线 / 一对一提问 / 学习打卡 / 赠书活动

目前, 星球 内第一个项目:全栈前后端分离博客项目,演示地址:http://116.62.199.48/, 1.0 版本已经更新完毕,正在更新 2.0 版本。采用技术栈 Spring Boot + Mybatis Plus + Vue 3.x + Vite 4手把手,前端 + 后端全栈开发,从 0 到 1 讲解每个功能点开发步骤,1v1 答疑,陪伴式直到项目上线,目前已更新了 224 小节,累计 35w+ 字,讲解图:1544 张,还在持续爆肝中,后续还会上新更多项目,目标是将 Java 领域典型的项目都整上,如秒杀系统、在线商城、IM 即时通讯、权限管理等等,已有 1000+ 小伙伴加入,欢迎点击围观

Java 1.8 引入了 Stream API,它是处理集合数据的新方式,提供了更加便捷、高效、灵活的操作方法。Stream API 是函数式编程的一部分,它允许开发者以声明式的方式对数据进行处理,而无需关心具体的实现细节。

什么是 Stream?

Stream 是一个来自数据源的元素队列,并支持聚合操作。它是用于对集合数据(包括列表、集合、数组等)进行操作的工具。Stream API 可以让你以一种更加简洁和可读性强的方式处理数据。

Stream API 不直接修改数据源,而是通过将操作应用于 Stream 上来返回新的 Stream,并保留原有数据源的不变性。

Stream 的特点

Stream API 具有以下几个重要的特点:

  1. 声明式:你可以以声明式的方式编写代码,描述要完成的任务,而无需关心具体的实现细节。
  2. 可复用:Stream 是可以复用的,你可以对同一个数据源进行多次操作。
  3. 惰性执行:Stream 的操作是惰性执行的,只有在最终需要结果时才会执行,这样可以避免不必要的计算。
  4. 并行处理:Stream API 支持并行处理,可以充分利用多核处理器的性能。

使用 Stream

使用 Stream API 分为三个步骤:

  1. 获取数据源:你可以从列表、集合、数组等数据源中获取一个 Stream 对象。
  2. 中间操作:对获取的 Stream 进行中间操作,例如筛选、映射、排序等。
  3. 终端操作:对中间操作后的 Stream 进行终端操作,例如转换成一个新的集合等。

让我们开始步入学习的旅程吧!Go !

章节目录
1. Filter 过滤
2. Sorted 排序
3. Map 转换
4. Match 匹配
5. Count 计数
6. Reduce 规约