01-Java 集合
2022-03-22 13:51:43 2 举报
AI智能生成
以思维导图的形式,汇总 【Java 集合】相关的面试点
作者其他创作
大纲/内容
Map
TreeMap
HashMap
Hash基础
解决hash冲突的办法有哪些?HashMap用的哪种?
属性
那 HashMap 有哪些重要属性?分别用于做什么的?
threshold 除了用于存放扩容阈值还有其他作用吗?
HashMap默认加载因子是多少?为什么是 0.75,不是 0.6 或者 0.8 ?
HashMap 的默认初始容量是多少?HashMap 的容量有什么限制吗?
怎么计算容量的
你说 HashMap 的容量必须是 2 的 N 次方,这是为什么?
数据结构
底层数据结构是什么?
为什么在解决 hash 冲突的时候,不直接用红黑树?而选择先用链表,再转红黑树?
红黑树
是什么
操作过程
平衡树操作过程
为什么使用红黑树 ,有什么其他数据结构代替红黑树吗
API
Put过程
流程
分支主题
计算 key 的 hash 值,是怎么设计的
Resize()
流程
分支主题
Get()
线程不安全
为什么不安全
多线程下安全的操作 map还有其他方法吗?
一般用什么作为HashMap的key?
1.7 和 1.8的区别
ConcurrentHashMap
1.7 分段锁
Put操作
size 方法
1.8
和1.7的比较
Put操作
Get操作
resize()
get方法不需要加锁与volatile修饰的哈希桶有关吗?
ConcurrentHashMap 不支持 key 或者 value 为 null 的原因?
为什么要 用cas算法
并发度是多少?
ConcurrentHashMap 迭代器是强一致性还是弱一致性?
HashTable
和ConcurrentHashMap比较
说一下Hashtable的锁机制 ?
ConcurrentSkipListMap
基本
常见的集合有哪些?
线程安全的集合有哪些?线程不安全的呢?
Collection框架中实现比较要怎么做?
Iterator 和 ListIterator 有什么区别?
快速失败(fail-fast)和安全失败(fail-safe)
快速失败
安全失败
List
基本
Arraylist
源码
add
resize
get
LinkedList
一些问题
Arraylist与 LinkedList 异同点?
ArrayList 与 Vector 区别?
ArrayDeque 与 LinkedList 的区别
Array 和 ArrayList 有什么区别?什么时候该应 Array 而不是 ArrayList 呢?
并发
CopyOnWriteArrayList
是什么?
实现
源码
读取
写入
Queue
基本
ArrayDeque 与 LinkedList 的区别
PriorityQueue
是什么?
Queue 与 Deque 的区别
并发容器
BlockingQueue 阻塞队列
ArrayBlockingQueue
LinkedBlockingQueue
ConcurrentLinkedQueue 非阻塞同步队列
Disruptor
Set
TreeSet
实现
HashSet
比较 HashSet、LinkedHashSet 和 TreeSet 三者的异同
HashSet 和 HashMap 区别?
分支主题
0 条评论
下一页