HashMap理解

HashMap中Capacity为数组长度,默认大小为16,size为元素个数,loadFactor为size/capacity,默认为0.75,当存储的元素个数size和capacity比如大于0.75时,hashMap开始按照2的次幂扩容。

元素存放的位置算法:所以我们首先想到的就是把hashcode对数组长度取模运算,这样一来,元素的分布相对来说是比较均匀的。但是,“模”运算的消耗还是比较大的,能不能找一种更快速,消耗更小的方式那?java中时这样做的, 

Java代码  收藏代码

      1. static int indexFor(int h, int length) {  
      2.        return h & (length-1);  
      3.    }  
原文地址:https://www.cnblogs.com/dudadi/p/7931882.html