Stream流和Lambad表达式

Stream流和Lambad表达式

Stream流

Stream流有一些特性:

1 .Stream流不是一种数据结构,不保存数据,它只是在原数据集上定义了一组操作。
2.这些操作是惰性的,即每当访问到流中的一个元素,才会在此元素上执行这一系列操作。
3.Stream不保存数据,故每个Stream流只能使用一次。

Stream 的操作分为三种:

1.创建stream流。
2.中间操作。
3.终止操作。

创建stream

1)Collection接口的stream()或parallelStream()方法
2)Arrays.stream(array)
3)静态的Stream.iterate()方法生成无限流,接受一个种子值以及一个迭代函数
4)静态的Stream.generate()方法生成无限流,接受一个不包含引元的函数

中间操作

1)filter——接收 Lambda , 从流中排除某些元素。
2)limit——截断流,使其元素不超过给定数量。
3)skip(n) —— 跳过元素,返回一个扔掉了前 n 个元素的流。若流中元素不足 n 个,则返回一个空流。与 limit(n) 互补
4)distinct——筛选,通过流所生成元素的 hashCode() 和 equals() 去除重复元素
5)sor

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值