引导语 在 JDK7 版本下,很多人都知道 HashMap 会有链表成环的问题,但大多数人只知道,是多线程引起的,至于具体细节的原因,和 JDK8 中如何解决这个问题,很少有人说的清楚,百度也几乎看不懂,本文就和大家聊清楚两个问题:1:JDK7 中 HashMap 成环原因,2:JDK8 中是如何解决的. JDK7 中 HashMap 成环原因 成环的时机 1:HashMap 扩容时. 2:多线程环境下. 成环的具体代码位置 在扩容的 transfer 方法里面,有三行关键的代码,如下: voi