【java经典面试题】集合必问题:HashMap是怎么解决哈希冲突的?

通常解决Hash冲突的方法有四种
1 开放定址法(线性探测法),如ThreadLocal解决Hash冲突

按照顺序,向前寻找一个位置来存储冲突的key
2链式寻址法,如HashMap解决Hash冲突

3 再Hash法,hash存在冲突不断再Hash直到不冲突
4建立公共溢出区
把Hash表分为基本表和溢出表两个部分,存在冲突的元素放到溢出表
Hashmap中的hash表容量大于64,并且添加元素链表长度大于8时转化为红黑树。