JDK8 Stream性能介绍
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要讲解了"JDK8 Stream性能介绍",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"JDK8 Stream性能介绍"吧!一、场景在编写代码
千家信息网最后更新 2026年11月02日JDK8 Stream性能介绍
这篇文章主要讲解了"JDK8 Stream性能介绍",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"JDK8 Stream性能介绍"吧!
一、场景
在编写代码时,想用jdk8的stream替换以前的for循环,代码如下:
//for方法Setkeys = Sets.newHashSetWithExpectedSize(list.size());for (T data : list) { keys.add(getWrapRedisKey(data));}//stream方法Set keys = list.stream().map(this::getWrapRedisKey).collect(Collectors.toSet());
二、 问题
stream可以非常优雅的一行代码就解决,而for则需要三行代码,生产力大大提高。
但是for循环可以实现初始化容量,这在频繁add触发rehash、链表转红黑树时,能大大提高性能,那么stream的api的Collectors.toSet方法有没有设置初始化容量。
查看源码:

三、测试
Talking is cheap,show me the code
简单写了一个测试代码
public static void main(String[] args) { int expectSize = 100000; List source = generateData(expectSize); long start = System.currentTimeMillis(); testFor(source); //testStream(source); System.out.println(System.currentTimeMillis() - start);}private static void testFor(List source) { Set sets = Sets.newHashSetWithExpectedSize(source.size()); for (String s : source) { sets.add(s); }}private static void testStream(List source) { source.stream().collect(Collectors.toSet());}private static List generateData(int size) { List list = Lists.newArrayListWithCapacity(size); for(int i = 1; i <= size; i++) { list.add(UUIDUtils.generateId()); } return list;} 结果是10w数据是,for比stream快2-3倍...
四、 结果
在数据量比较大,同时要求相应时间场景下,应该还是使用for或者在使用stream前预设集合容量。
感谢各位的阅读,以上就是"JDK8 Stream性能介绍"的内容了,经过本文的学习后,相信大家对JDK8 Stream性能介绍这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
性能
代码
容量
方法
学习
内容
场景
数据
结果
问题
循环
测试
频繁
优雅
一行
同时
就是
思路
情况
文章
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
深圳市人人互联网科技有限公司
亿人帮互联网科技有限公司
苏州找大状互联网科技有限公司
工业互联网科技新基建
互联网科技未来
互联网科技股票
迪茉互联网科技
互联网科技上市公司
万达互联网科技
融贸通互联网科技
互联网科技股午盘股票涨跌
顺网科技2021年互联网排名
互联网公司科技股
和信科技工业互联网
中国新注册互联网科技
广西科技产业互联网是什么
西安左小互联网科技有限公司
北京天晋互联网科技有限公司
众联互联网络科技
北京瑞云互联网科技有限公司
上海喔噻互联网科技有限公司
杭州互联网科技公司
宜安科技 互联网金融
时间互联网络科技
互联网科技类展会
民营互联网公司国防科技
企晟互联网信息科技有限公司
伍佰万互联网科技怎么赚钱
上海旺乐尼互联网科技有限公司
互联网科技创新方面的资料