发现问题 按照上面这张图的流程,先判断链表长度是否大于8,如果链表长度大于8则再判断数组容量是否小于64,如果小于64就resize——问题:你resize之后没有插入键值对的操作,同时按照这个流程图,threshhold好像没什么用。查看源码 应当是先在链表中插入节点,之后判断链表长度是否大于8(treeify_threshold),如果大于8则进行treeifyBin函数。 在这里我们可以发现如果数组的长度小于64,则堆hashmap进行resize() 正确修改