摘要: JDK 1.7扩容的实现代码 void resize(int newCapacity) { Entry[] oldTable = table; int oldCapacity = oldTable.length; ... Entry[] newTable = new Entry[newCapacit 阅读全文
posted @ 2020-08-02 15:34 苏黎世湖畔 阅读(715) 评论(0) 推荐(0)
摘要: Jdk1.8初始化hashMap容量的算法static final int tableSizeFor(int cap) { // 先减1,避免传进来的本来就是2的n次幂,导致算出来多了一次幂,比如传16会得到32,实际上16即可 int n = cap - 1; // 低位全部变1, int4字节* 阅读全文
posted @ 2020-08-02 10:32 苏黎世湖畔 阅读(352) 评论(0) 推荐(0)