栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Java性能可选

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java性能可选

Optional<T>
只是一个普通的通用类,其中包含类型T的引用。因此,它添加了一个间接层。该方法调用本身也不会很昂贵,因为该类是
final
这样,因此可以避免动态分配。

可能会出现性能问题的唯一地方是使用大量此类实例时,但是即使那样,诸如a之类的性能也一点

Stream<Optional<String>>
也不差。但是,当使用大量原始值时,由于这层间接调用需要非常频繁地实例化对象,因此您会发现使用
Stream<Integer>
(或
Integer[]
)与原始专业化
IntStream
(或
int[]
)会对性能造成影响
Integer
。但是,使用诸如之类的东西,这是我们已经知道并要付出的代价
ArrayList<Integer>

Stream<OptionalInt>
/
显然会遇到相同的问题
OptionalInt[]
,因为OptionalInt本质上是一个具有
int
字段和状态
boolean
标记的类(与之不同的
Optional<T>
是只能使用该
T
字段),因此
Integer
尽管大小更大,但还是很相似。当然,a
Stream<Optional<Integer>>
会增加 两个 间接级别,相应地会导致性能双倍下降。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/569626.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号