测试Java Stream流 parralle与 sequential的效率

实验环境

操作系统:win10

处理器:Intel i5-4200U 2核4线程

Java版本:1.8

实验方案

统计大小为1000000、取值范围[1,100]的ArrayList中大于50小于75的值个数

对比方式

方式1:使用for循环进行统计

方式2:使用stream流中的filter进行统计(调用sequential())

方式3:使用stream流中的filter进行统计(调用parralle())

每种方式均重复运行1000次去平均用时作为实验的结果

实验结果与分析

方式 平均用时(ms)
方式1 86.1992
方式2 51.5976
方式3 26.8285

从实验结果中可以看出使用Stream流中的串行计算方式比使用for循环进行统计速度提升了40%,而使用Stream流中的并行计算方式比使用for循环进行统计快了69%

附录

测试代码地址:https://gitee.com/xuwansen/test_stream_default_sequential_parralle.git

测试Java Stream流 parralle与 sequential的效率相关推荐

  1. Java stream流式计算详解

    Java stream流式计算详解 1. Stream概述 1.1 Stream简介 1.2 Stream分类 2. Stream操作 2.1 Stream创建 2.2 Stream无状态操作 2.3 ...

  2. java Stream 流

    java Stream 流 Stream 流 流的创建 流的转化 Optianal 流的计算 Stream 流 1. Stream的定义 来自数据源的支持聚合操作的元素序列. 即一个流对外提供接口,接 ...

  3. Java Stream流基础

    Java Stream流基础 何为Steam流? Stream 是对集合数组对象功能的增强,其专注于对集合数组对象进行各种非常便利.高效的聚合操作,或者大批量数据操作.通常我们需要多行代码才能完成的操 ...

  4. Java Stream流之求和

    Java Stream流之求和 流方式实现 基本数据类型 和 包装类型 的一位数组求和 package top.yangbocsu;import java.util.Arrays;/*** @auth ...

  5. 深度掌握 Java Stream 流操作,让你的代码高出一个逼格

    概念 Stream将要处理的元素集合看作一种流,在流的过程中,借助Stream API对流中的元素进行操作,比如:筛选.排序.聚合等. Stream` 的操作符大体上分为两种:`中间操作符`和`终止操 ...

  6. 这个方法可以让你的代码高出一个逼格——掌握 Java Stream 流操作

    概念 Stream将要处理的元素集合看作一种流,在流的过程中,借助Stream API对流中的元素进行操作,比如:筛选.排序.聚合等. Stream` 的操作符大体上分为两种:`中间操作符`和`终止操 ...

  7. 优雅代码的秘密,只因为我掌握了Java Stream 流操作

    概念 Stream将要处理的元素集合看作一种流,在流的过程中,借助Stream API对流中的元素进行操作,比如:筛选.排序.聚合等. Stream` 的操作符大体上分为两种:`中间操作符`和`终止操 ...

  8. Java Stream流的使用

    Stream流--Java8新特性之一 用于处理集合,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找.过滤和映射数据等操作. Java Steam的操作是基于集合的.Steam的操作可以分为 ...

  9. Java Stream流封装速度竟然如此给力!

    [辰兮要努力]:hello你好我是辰兮,很高兴你能来阅读,博客昵称是希望自己能不断精进,向着优秀程序员前行! 博客来源于项目以及编程中遇到的问题总结,偶尔会有读书分享,我会陆续更新Java前端.后台. ...

最新文章

  1. 第二章 微服务网关基础组件 - zuul入门
  2. 30、【华为HCIE-Storage】--Hyper Metro(双活【块业务】)
  3. 2022年全球及中国脂肪酸氯化物行业专项可行性与供需前景调研报告
  4. Live2D WebGL实现
  5. Go案例说明defer panic recover
  6. php curl 下载图片,CURL实现下载远程图片并保存到本地
  7. 《ODAY安全:软件漏洞分析技术》学习心得-----shellcode的一点小小的思考
  8. Hadoop精华问答 | 关于Hadoop核心技术的精华问答
  9. 信息学奥赛一本通 1205:汉诺塔问题 | OpenJudge 2.2 6261:汉诺塔问题
  10. poj3233(矩阵快速幂的和)
  11. Zoho 修复Desktop Central 中的又一个严重漏洞
  12. 1t硬盘怎么分区最好_新买的固态硬盘该不该分区?分区后性能如何?真是后悔知道晚了!...
  13. Mysql安装 | 跟着黑马程序员视频安装Mysql,少走随机密码错误的弯路【有手就行系列】
  14. android手机无法开机自动启动,安卓手机无法开机的6种解决方法
  15. 地下城与勇士(DNF)安图恩副本(黑雾之源、震颤的大地、舰炮防御战、擎天之柱、能量阻截战、黑色火山、安徒恩的心脏)(童年的回忆)
  16. [spfa] Jzoj P4722 跳楼机
  17. python画平行四边形_利用transform skewX制作平行四边形导航菜单
  18. 微信小程序调试webview_关于微信小程序webview的使用
  19. Git 分支操作、Git 团队协作机制、GitHub 操作
  20. 半小时实现Java手撸Http协议,爽!!(附完整源码,建议收藏)

热门文章

  1. 华为HCIP-DATACOM(821)411-440
  2. 2018最受欢迎测试工具
  3. Ultra96安装指导和无线配置
  4. spritekit 动画_使用SpriteKit在Swift中创建动画
  5. (每日一练c++)CC114 有效的数独
  6. vivo x60pro刷机鸿蒙,vivoX60Pro+玩机技巧-有哪些黑科技
  7. 怎么通过django模板输出双花括号{{}}
  8. 哈夫曼树中压缩率到底是什么意思
  9. python坐标轴的粗细设置
  10. c new java_“邻避设施”的种类主要包括()。