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

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注