Java之Stream流的笔记--手写版

Stream流通过讲集合或数组转换成链状流式的结构,简化了集合和数组进行排序、筛选、遍历、去重、统计等操作。主要包括创建流、中间操作、终结操作。若流中无终结操作,则中间操作不会执行;流是一次性的,使用完就会失效,不会影响原数据。

  • 创建流时,对于数据和单列集合直接调用stream方法即可;对于双列集合,需要借助entrySet转换成单列集合,然后再调用stream方法。
  • 中间操作包括filter、map、distinct、sorted、limit、skip、flatMap。每个操作里只有一个方法,一般通过匿名内部类重写方法,可以简化为函数式接口。中间操作的输入是流,输出也是流。
  • 终结操作包括foreach、count、max/min、collect、anyMatch、allMatch、noneMatch、findAny、findFirst、reduce。输入是流,输出是某个特定的类型或遍历流中元素。
相关推荐
hanlin031 分钟前
刷题笔记:力扣第144题-二叉树的前序遍历
笔记·算法·leetcode
彧azz11 分钟前
图的最短路径:Dijkstra与Floyd算法
数据结构·笔记·学习
人效思维笔记23 分钟前
阿米巴推行前,经营者要先做好哪些准备?
经验分享·笔记·阿米巴·阿米巴经营·中国式阿米巴
志尊宝1 小时前
Vue3 零基础每日笔记(047):动态路由与路由参数——:id 传参、query 传参、props 解耦
前端·javascript·vue.js·笔记·html5
沪上企服通2 小时前
旧账系统的信创迁移工程:从 MySQL/Oracle 到国产库、国密与电子会计档案闭环
数据库·笔记·数据库架构
三岁就很~酷~3 小时前
ai agent自学 基础命令和上下文监控(9/17)
笔记
彧azz4 小时前
Java学习记录:判断语句
java·笔记·学习·算法
hanlin034 小时前
刷题笔记:力扣第560题-和为k的子数组
笔记·算法·leetcode
摇滚侠4 小时前
《Spring Boot 3:高级与架构设计》第 1 章 元编程与元信息 个人理解 1
java·spring boot·笔记·后端
志尊宝4 小时前
Vue3 零基础每日笔记(046):声明式导航与编程式导航——useRouter / useRoute 双子星
vue.js·笔记·#vue #前端 #前端开发·#javascript·#vue.js