测试Java Stream流 parralle与 sequential的效率
测试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的效率相关推荐
- Java stream流式计算详解
Java stream流式计算详解 1. Stream概述 1.1 Stream简介 1.2 Stream分类 2. Stream操作 2.1 Stream创建 2.2 Stream无状态操作 2.3 ...
- java Stream 流
java Stream 流 Stream 流 流的创建 流的转化 Optianal 流的计算 Stream 流 1. Stream的定义 来自数据源的支持聚合操作的元素序列. 即一个流对外提供接口,接 ...
- Java Stream流基础
Java Stream流基础 何为Steam流? Stream 是对集合数组对象功能的增强,其专注于对集合数组对象进行各种非常便利.高效的聚合操作,或者大批量数据操作.通常我们需要多行代码才能完成的操 ...
- Java Stream流之求和
Java Stream流之求和 流方式实现 基本数据类型 和 包装类型 的一位数组求和 package top.yangbocsu;import java.util.Arrays;/*** @auth ...
- 深度掌握 Java Stream 流操作,让你的代码高出一个逼格
概念 Stream将要处理的元素集合看作一种流,在流的过程中,借助Stream API对流中的元素进行操作,比如:筛选.排序.聚合等. Stream` 的操作符大体上分为两种:`中间操作符`和`终止操 ...
- 这个方法可以让你的代码高出一个逼格——掌握 Java Stream 流操作
概念 Stream将要处理的元素集合看作一种流,在流的过程中,借助Stream API对流中的元素进行操作,比如:筛选.排序.聚合等. Stream` 的操作符大体上分为两种:`中间操作符`和`终止操 ...
- 优雅代码的秘密,只因为我掌握了Java Stream 流操作
概念 Stream将要处理的元素集合看作一种流,在流的过程中,借助Stream API对流中的元素进行操作,比如:筛选.排序.聚合等. Stream` 的操作符大体上分为两种:`中间操作符`和`终止操 ...
- Java Stream流的使用
Stream流--Java8新特性之一 用于处理集合,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找.过滤和映射数据等操作. Java Steam的操作是基于集合的.Steam的操作可以分为 ...
- Java Stream流封装速度竟然如此给力!
[辰兮要努力]:hello你好我是辰兮,很高兴你能来阅读,博客昵称是希望自己能不断精进,向着优秀程序员前行! 博客来源于项目以及编程中遇到的问题总结,偶尔会有读书分享,我会陆续更新Java前端.后台. ...
最新文章
- 第二章 微服务网关基础组件 - zuul入门
- 30、【华为HCIE-Storage】--Hyper Metro(双活【块业务】)
- 2022年全球及中国脂肪酸氯化物行业专项可行性与供需前景调研报告
- Live2D WebGL实现
- Go案例说明defer panic recover
- php curl 下载图片,CURL实现下载远程图片并保存到本地
- 《ODAY安全:软件漏洞分析技术》学习心得-----shellcode的一点小小的思考
- Hadoop精华问答 | 关于Hadoop核心技术的精华问答
- 信息学奥赛一本通 1205:汉诺塔问题 | OpenJudge 2.2 6261:汉诺塔问题
- poj3233(矩阵快速幂的和)
- Zoho 修复Desktop Central 中的又一个严重漏洞
- 1t硬盘怎么分区最好_新买的固态硬盘该不该分区?分区后性能如何?真是后悔知道晚了!...
- Mysql安装 | 跟着黑马程序员视频安装Mysql,少走随机密码错误的弯路【有手就行系列】
- android手机无法开机自动启动,安卓手机无法开机的6种解决方法
- 地下城与勇士(DNF)安图恩副本(黑雾之源、震颤的大地、舰炮防御战、擎天之柱、能量阻截战、黑色火山、安徒恩的心脏)(童年的回忆)
- [spfa] Jzoj P4722 跳楼机
- python画平行四边形_利用transform skewX制作平行四边形导航菜单
- 微信小程序调试webview_关于微信小程序webview的使用
- Git 分支操作、Git 团队协作机制、GitHub 操作
- 半小时实现Java手撸Http协议,爽!!(附完整源码,建议收藏)
热门文章
- 华为HCIP-DATACOM(821)411-440
- 2018最受欢迎测试工具
- Ultra96安装指导和无线配置
- spritekit 动画_使用SpriteKit在Swift中创建动画
- (每日一练c++)CC114 有效的数独
- vivo x60pro刷机鸿蒙,vivoX60Pro+玩机技巧-有哪些黑科技
- 怎么通过django模板输出双花括号{{}}
- 哈夫曼树中压缩率到底是什么意思
- python坐标轴的粗细设置
- c new java_“邻避设施”的种类主要包括()。