爲何HashMap會出現死循環java
首先,咱們知道java的HashMap不是線程安全的。多線程下應該使用ConcurrentHashMap。數組
HashMap底層是基於動態數組和單向鏈表(JDK1.7,JDK1.8鏈表長度超過8會轉成紅黑樹)。咱們知道鏈表比較容易造成閉合的環,若是鏈表造成閉合的環,這個時候get,將會陷入死循環。安全
如何造成閉合鏈表?多線程
後面再補。。。spa