hashMap实现原理

    hashMap是MAP接口的最常用的实现类。hash算法的使用时为了查询键的速度。

 

在所有的数据结构中数组无疑是crud最快的。hashMap 的实现就是巧妙地利用了数组速度快与存储任何类型的特性。

 

创建固定长度的linkedList<T>[] simpleHashMap 。 数组的长度是固定的。hash值是可能重复的。在hashMap put(key,value)时

 

Math.abs(key.hashCode())%simpleHashMap.size() 该值作为数组的下标。该下标处的元素 linkedList<T> 可以存储相同下标值得多个元素。

 

利用下标查询数组。对数组的长度取模限定下标不超界限。以及hash算法的均匀分布。实现hashMap的快速查询。 

posted @ 2019-02-01 09:39  办公室的仙人掌  阅读(112)  评论(0编辑  收藏  举报