stream 定长循环_Java8之Stream流代替For循环操作
Stream流代替For循环进行输出可以使代码更简洁。
需求:根据姓名获取员工信息
1.建立实体类:Emp
2.测试类:
(1.) 原始For写法:
(2.) Stream流:
输出结果为:
补充知识:java中for、foreach、stream性能比较
我们在开发中循环遍历一个数组经常会用到,jdk8推出了一些新特性,对循环做了比较,通过代码亲测,记录一下!
1、for循环
2、foreach循环(for循环的增强版)
结论:通过代码测试发现在1万以内的数据,for循环比foreach效率要高一些;但是10万以内数据的时候,foreach效率更高一些!
foreach [10万数据时间 1112 1165 1203 1115] [1万数据 235 146 176 164 175]
for循环 [10万数据时间 1330 1437 1347] [1万数据 110 109 141]
3、stream api
(1)、串行处理,即同步处理
结论:1万以内的数据,for循环的性能要高于foreach和stream;10万以内的数据明显可以看出stream效率最高,其次foreach,最后是for。
[10万数据时间 854 892 789 844][1万数据 172 156 219 172 171]
(2)并行处理,即stream api提供了异步处理机制
结论:1万以内的
stream 定长循环_Java8之Stream流代替For循环操作相关推荐
- Stream代替for循环
前言 用Stream代替for循环进行输出可以使代码更简洁. 例如 List<String> players =Arrays.asList("kebe","j ...
- Node.js stream模块(一)可读流
目录 fs.readFile的问题 如何设计出内存友好的,且人性化的数据生产与消费模式 stream模块 创建可读流对象 _read的作用 push的作用 可读流对象的缓冲区buffer 水位线hig ...
- C# Stream 和 byte[] 之间的转换(文件流的应用)
一. 二进制转换成图片 MemoryStream ms = new MemoryStream(bytes); ms.Position = 0; Image img = Image.FromStream ...
- 描述 C 库函数 int fseek(FILE *stream, long int offset, int whence) 设置流 stream 的文件位置为给定的偏移 offset,参数 offs
描述 C 库函数 int fseek(FILE *stream, long int offset, int whence) 设置流 stream 的文件位置为给定的偏移 offset,参数 offse ...
- java socket发送定长报文_一个基于TCP协议的Socket通信实例
原标题:一个基于TCP协议的Socket通信实例 1. 前言 一般接口对接多以http/https或webservice的方式,socket方式的对接比较少并且会有一些难度.正好前段时间完成了一个so ...
- Stream的特性、用法、stream().map().collect()用法
Stream的特性.用法.stream().map().collect()用法 1.举例说明 有一个集合: List<User> users = getList(); 现在想获取User的 ...
- java8 流操作_java8中的流操作
Stream 流是 Java 8 新提供给开发者的一组操作集合的 API,将要处理的元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选.排序.聚合等.元素流在管道中经过 ...
- stream of java_Java 8 新特性-Stream更优雅的处理集合入门
Java 8 新特性之--Stream 一. 简单介绍 Stream是Java 8提出了的一种新的对集合对象功能的增强.它集合Lambda表达式,对集合提供了一些非常便利,高效的操作,使得代码具有非常 ...
- netty权威指南学习笔记五——分隔符和定长解码器的应用
TCP以流的方式进行数据传输,上层应用协议为了对消息进行区分,通常采用以下4中方式: 消息长度固定,累计读取到长度综合为定长LEN的报文后,就认为读取到了一个完整的消息,将计数器置位,重新开始读取下一 ...
最新文章
- 如何使用 ASP.NET 实用工具加密凭据和会话状态连接字符串
- AC自动机 + 概率dp + 高斯消元 --- HDU 5955 or 2016年沈阳icpc H [AC自动机 + 概率dp + 高斯消元]详解
- 开放linux下mysql数据库3306端口
- Ironic 裸金属实例的部署流程
- go语言中没有隐藏的this指针
- 亚马逊 各国站点 链接_使用Amazon S3和HTTPS的简单站点托管
- Java List接口概述
- C++:执行i++时,汇编是怎么操作的
- lvs+keepalived实现lvs nat模式热备配置
- JavaScript汉字Unicode编码相互转换
- B00016 交换变量a和b的值
- RHEL 6.2 Error: Cannot create GC thread. Out of system resources.
- 南京大学计算机学院杨老师,南京大学计算机系名师风采_跨考网
- 各代iphone尺寸_iphone 各型号设备的屏幕尺寸
- 一个四维混沌吸引子曲线(matlab完整代码)
- 宝藏动植物元素矢量图素材,速来收藏
- 【Python】用字母生成图像
- MySQL34道例题
- ByRef和ByVal
- 基于Python可视化的卷积神经网络的城市感知评估系统
热门文章
- ios自定义UITextView 支持placeholder的方法
- [考试]20150903
- SDL2.0文档翻译
- Unity3D动画面板编辑器状态属性对照表
- [ZJOI2005]午餐
- xcode模拟器不显示键盘解决方案
- 学习思考之《编程之美》.
- atoi 原来将字符串02002xzm100转换为int以后是2002
- 大数据之-Hadoop3.x_MapReduce工作流程---大数据之hadoop3.x工作笔记0109
- Elasticsearch--分词-自定义扩展词库---全文检索引擎ElasticSearch工作笔记022