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

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

  • 创建流时,对于数据和单列集合直接调用stream方法即可;对于双列集合,需要借助entrySet转换成单列集合,然后再调用stream方法。
  • 中间操作包括filter、map、distinct、sorted、limit、skip、flatMap。每个操作里只有一个方法,一般通过匿名内部类重写方法,可以简化为函数式接口。中间操作的输入是流,输出也是流。
  • 终结操作包括foreach、count、max/min、collect、anyMatch、allMatch、noneMatch、findAny、findFirst、reduce。输入是流,输出是某个特定的类型或遍历流中元素。
相关推荐
浅念-3 小时前
C++ :类和对象(4)
c语言·开发语言·c++·经验分享·笔记·学习·算法
时代的凡人4 小时前
0213晨间笔记
笔记
AI视觉网奇4 小时前
ue 推送直播流 推流 linux 实战
笔记·学习·ue5
kkkkkkkkk_12014 小时前
【强化学习】09周博磊强化学习纲要学习笔记——第五课上
笔记·深度学习·学习·强化学习
玩c#的小杜同学4 小时前
工业级稳定性:如何利用生产者-消费者模型(BlockingCollection)解决串口/网口高频丢包问题?
笔记·学习·性能优化·c#·软件工程
laplace01234 小时前
deque+yield+next语法
人工智能·笔记·python·agent·rag
瑶光守护者5 小时前
【学习笔记】3GPP NR-NTN 移动性IRAT分析
笔记·学习·卫星通信·nr-ntn
杂鱼Tong6 小时前
29. Revit API:扩展存储(ExtensibleStorage)
笔记
saoys6 小时前
Opencv 学习笔记:图像卷积操作(锐化核实战 + 数据类型避坑)
笔记·opencv·学习
Coisinilove7 小时前
MATLAB学习笔记——第三章
笔记·学习·matlab