for(),for迭代器,forEach(),stream(),parallelSteam() 执行效率基本对比结果

以下内容为个人亲自执行结果,编写只为记录与分享,若有不同可直接留言,共同交流,共同进步!后续会不断完善!

测试环境

  1. win10 4核20G
  2. jdk1.8.0_231
  3. IDEA2019.3

分别执行10条, 100条, 100条, 1000条, 10000条, 100000条, 1000000条数据测试结果分析

  1. 执行循环内容时间较长, 超过1s左右时, 使用parallelSteam效率最高
    parallelSteam是并行,
    并行,指的是在同一时刻多个任务同时执行。
    并发,指的是在同一时间段多个任务交替执行。
    当然,并行的执行速度更快,但并行也依赖硬件设置,因为它依赖硬件CPU是多核的场景。并发则不受限制。
  2. forEach()不管是循环内容时间长短消耗时间都是最长的, 在内容执行时间短时,执行所消耗是其他方法的5-20倍, 在消耗时间超过1s时, 随着执行条数增加消耗时间缩短, 在1000条以上时与其他方法消耗时间持平
  3. Stream为串行流,执行效率上比for要差一些, 是以时间换空间
    执行内容时间短时, 效率对比, for >= for迭代器>stream>parallelSteam>forEach
    执行内容时间长时, 效率对比, parallelSteam>for >= for迭代器>stream>forEach
  4. 集合中拿取数据时, 通过Stream方式多次获取与for循环一次组装效率对比, for循环效率更高!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值