jdk1.7中hashmap扩容时不会产生死循环

在扩容时 transfer( ) 方法中
newTable 新数组 局部变量
table 旧数组 全局变量
当第一个链表进行while循环时
执行到 e.next = newTable[i]; 时 newTable[i]肯定为null。
导致 旧数组table 中 当前链表对象的next已经为null了 。
所以即使是多线程的情况下不会死循环

posted @ 2020-11-20 22:45  我的架构师之路  阅读(185)  评论(0)    收藏  举报