Java8 Stream 的这些知识,你了解吗

什么是流呢?

想了好久也不知道怎么表述,感觉很抽象,就是一个很好用的工具🐖。

认真点说辞👇

对 Java集合 的增强,提供了 过滤,计算,转换 等聚合操作,使用起来方便快捷。

详解👇

流 和 集合 的不同点

为了弄明白这个 stream 是啥,我还特意去翻看了 Java SE 的文档🐖,今年第一次打开 哈哈哈

👉 docs.oracle.com/javase/8/do…

  1. 流不是数据结构,不存储数据
  2. 流不改变数据源的数据,比如 filter 一个集合时,最后是返回一个新集合,而不是删除原集合中的对象
  3. 流的 API 分为 中间操作终端操作中间操作是惰性的,遇到终端操作才真正执行
  4. 流是无限的,集合是有限的,可以通过 limit ,findFirst 等 短路 API 来让它快点执行完
  5. 是一次性的,使用后就关闭了,需要重新创建,和 Iterator 一样。

流的创建

看文档里有很多种创建方式,stream(),Stream.of(),Arrays.stream() 等,不过我平时使用最多的还是 stream() 这种。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值