先看几道HashMap的面试题:
1、请简述HashMap的底层存储数据结构?
2、HashMap的key的hash值是如何计算的?为什么这样实现?
3、HashMap的默认容量是多少?加载因子是什么?容量如何变化?容量不够怎么办?
4、HashMap调用put方法底层数据的存放过程?
5、HashMap链表节点过深时为什么选择使用红黑树?
6、什么是红黑树,谈谈你对红黑树的理解?
7、什么是hash碰撞,发生hash碰撞怎么办?
8、JDK1.7和JDK1.8的HashMap有什么不同?
9、HashMap和HashTable有什么区别?
10、HashMap与ConcurrentHashMap的区别?
11、我们能否让HashMap实现同步(线程安全)?
12、HashMap如何实现排序
后期会抽时间完善源码解读...