HashMap、LinkedHashMap、TreeMap 区别
HashMap,LinkedHashMap,TreeMap的区别
134 jdk1.7 头插法,扩容重新计算哈希 jdk1.8 尾插法,扩容使用&,计算扩容后位置
HashMap多线程环形问题
如果只有1个槽的数据:
node(1)->node(3)->node(4)H
resize后:
node(3)->node(1)
node(4)
如果第一个线程再执行node(3).next之前被挂起,而第二个线程执行完了,继续执行第一个得到的node(3).next=node(1),出现死循环
java7中resize的时候将每个数据放到链表的第一个,而java8会放到最后,不会出现环形,但是还是会出现丢失更新等等问题