21 个刁钻的 HashMap 面试题,这次要跪了!
1:HashMap 的数据结构?
2:HashMap 的工作原理?
3.当两个对象的 hashCode 相同会发生什么?
4.你知道 hash 的实现吗?为什么要这样实现?
5.为什么要用异或运算符?
6.HashMap 的 table 的容量如何确定?loadFactor 是什么?该容量如何变化?这种变化会带来什么问题?
7.HashMap中put方法的过程?
8.数组扩容的过程?
9.拉链法导致的链表过深问题为什么不用二叉查找树代替,而选择红黑树?为什么不一直使用红黑树?
10.说说你对红黑树的见解?
11.jdk8中对HashMap做了哪些改变?
12.HashMap,LinkedHashMap,TreeMap 有什么区别?
13.HashMap & TreeMap & LinkedHashMap 使用场景?
14.HashMap 和 HashTable 有什么区别?
15.Java 中的另一个线程安全的与 HashMap 极其类似的类是什么?同样是线程安全,它与 HashTable 在线程同步上有什么不同?
16.HashMap & ConcurrentHashMap 的区别?
17.为什么 ConcurrentHashMap 比 HashTable 效率要高?
18.针对 ConcurrentHashMap 锁机制具体分析(JDK 1.7 VS JDK 1.8)?
19.ConcurrentHashMap 在 JDK 1.8 中,为什么要使用内置锁 synchronized 来代替重入锁 ReentrantLock?
20.ConcurrentHashMap 简单介绍?
21.ConcurrentHashMap 的并发度是什么?
获取参考答案
扫码前往Java面试库小程序刷题,获取参考答案,博主正在努力更新答案,现在已经更新 2000+ 题了。
来源:https://www.cnblogs.com/Young111/p/11519952.html?utm\_source=gold\_browser_extension
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。