加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

用Java 7快速和常量get()映射

发布时间:2020-12-14 05:56:20 所属栏目:Java 来源:网络整理
导读:在使用 java 7提供的HashMap时,我遇到了问题,即get()从O(1)演变为O(n),如 here所述,并在java 8中解决. 但是因为我必须坚持使用java 7并且无法升级项目,我正在寻找一个库或任何方式来获得一个快速且常量的get(). 解决方法 Java 8中的变化的本质: 来自您的链
在使用 java 7提供的HashMap时,我遇到了问题,即get()从O(1)演变为O(n),如 here所述,并在java 8中解决.

但是因为我必须坚持使用java 7并且无法升级项目,我正在寻找一个库或任何方式来获得一个快速且常量的get().

解决方法

Java 8中的变化的本质:

来自您的链接Performance Improvement for HashMap in Java 8

Buckets containing a large number of colliding keys will store their entries in a balanced tree instead of a linked list after certain threshold is reached.

您可以通过改进hashCode实现来减少冲突键的数量来实现等效.

如果没有hashCode计算的详细信息或值的模式,则很难进一步建议.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读