gpt4 book ai didi

java - java.util.Map 和 java.util.Set 的优化实现?

转载 作者:太空狗 更新时间:2023-10-29 23:00:58 25 4
gpt4 key购买 nike

我正在编写一个应用程序,其中内存和较小程度上的速度至关重要。我从分析中发现,我在 Map 和 Set 操作上花费了大量时间。当我寻找减少调用这些方法的方法时,我想知道是否有人编写或遇到过显着改善访问时间或内存开销的实现?或者至少,在某些假设下可以改善这些事情?

通过查看 JDK 源代码,我无法相信它不能变得更快或更精简。

我知道 Commons Collections,但我不相信它有任何以更快或更精简为目标的实现。 Google Collections 也是如此。

更新:应该注意到我不需要线程安全。

最佳答案

通常这些方法非常快。您应该检查几件事:您的哈希码是否已实现?它们是否足够均匀?否则你会得到垃圾性能。

http://trove4j.sourceforge.net/ <-- 这样会更快一些并节省一些内存。我在 50,000 次更新中节省了几毫秒

您确定您正确使用了 map /集合吗?即不要试图遍历所有值或类似的东西。另外,例如不要先包含再删除。只需检查删除。

同时检查您是否使用 Double 与 double。我注意到数以万计的检查有几毫秒的性能改进。

您是否也正确/适本地设置了初始容量?

关于java - java.util.Map 和 java.util.Set 的优化实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/865423/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com