扩容时使用transfertransfer不同于put时的判断hash冲突,直接使用头插法,如果没有冲突,则next为null。如下:e.next = newTable[i];newTable[i] = e;如果线程B设置了newTable[i] = e,线程A执行e.next = newTable[i];则会造成e.next = e;不论是否有链表,都会造成死循环。