stream的优化:java封装的拆箱与装箱的弊端

authors.stream()
    .map(author->author.getAge)
    .map(age->age+10)//Stream<Integer>
    .filter(age>18)//Stream<Integer>
    .foreach(System.out::println);

上述是一个简单的stream流的使用,当我们拆开第二个map,或者filter的时候会发现,传入和传出的参数都是Integer类型,这样的拆箱与装箱无疑会增大时间的损耗,

为此stream提供了一些基本数据类型的优化

authors.stream()
    .mapToInt(author->author.getAge)
    .map(age->age+10)//IntStream
    .filter(age>18)//IntStream
    .foreach(System.out::println);

还有其他的形式:mapToLong,mapToDouble,flatMapToInt等等

posted @   天启A  阅读(27)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
历史上的今天:
2022-12-26 简单认识APP项目
点击右上角即可分享
微信分享提示