Dil*_*ton 6 java key object hashmap data-structures
使用a HashMap时,对于速度,对象类型对于元素检索有多大影响?假设我使用循环来迭代大型哈希映射的可能键.什么是我可以使用的最有效的密钥类型?
截至目前,由于简单起见,我使用String作为关键对象类型.在编码时,这个问题突然出现在我的脑海中并激起了我的好奇心.我试图在网上搜索这个问题,但找不到我想要的答案.谢谢!
哈希映射会向您询问密钥hashCode()。如果生成哈希码所花费的时间不合理,那么此类对象的插入和检索时间将会很长。举java.net.URL个例子。它的 hashcode 方法执行 DNS 查找。此类对象不会成为哈希映射的良好键。
对于哪个是最好的密钥,没有通用的答案,因为不存在最好的密钥。在哈希映射中使用的最佳密钥是您检索所需的密钥。只要确保钥匙hashCode()快速并int适当地使用空间即可。