Java流处理与惰性处理

Java Stream是新版JDK中的重要特性,很多伙伴对此不太熟悉,甚至不怎么使用,源于对其意义不理解,什么是流处理?为什么是惰性的?

下面的一个场景,可能有助于您理解流的行为。

妻子对儿子说:“关掉电视”。

跟没说一样。

妻子说:“把垃圾倒掉”。

没有任何动作。

她再说:“做你的家庭作业”。

铅笔没被拿起过。

妻子说:“我要叫你爸爸了。”

孩子马上行动起来,按下电视遥控器上的关闭按钮……

像十几岁的孩子一样,Stream 只有两种方法:中间和最终。

根据家中每位家长扮演的角色,后一个方法等效于 callDaddy()callMommy() 方法。

 

所以在使用Stream时不要太担心它执行了太多无用的中间计算,因为素有的调用在最终结果被求值前会进行融合!所以是非常高效的,比我们大部分for...或者while...等。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值