Java集合框架核心是Collection(单列)与Map(双列)两大体系;Collection下分List(有序可重复)、Set(无序/排序、不可重复)、Queue(FIFO);Map按结构分HashMap(数组+链表/红黑树)、TreeMap(红黑树)、LinkedHashMap(哈希+双向链表),并标注排序特性与线程安全方案。

明确主干:两大体系先立住
思维导图最上层只分两支:Collection(单列集合) 和 Map(双列集合)。这是整个框架的根基,所有类都归属其下。不要一上来就堆ArrayList、HashMap——先搭骨架,再填血肉。
Collection 分支按接口组织,不按实现类罗列
在Collection分支下,只展开三个核心接口:List、Set、Queue(别漏掉Deque)。每个接口旁标注1–2个关键特性,例如:
- List:有序、可重复、支持索引访问(get/set)
- Set:无序(HashSet)、或排序(TreeSet)、不可重复(靠hashCode+equals)
- Queue:FIFO原则,关注offer/poll/peek操作
实现类(如ArrayList、LinkedList、HashSet、PriorityQueue)作为子节点挂在对应接口下,每类旁用简短备注说明典型用途,比如“ArrayList:查询快,增删慢;LinkedList:频繁首尾操作”。
Map 分支聚焦键值逻辑与线程安全维度
Map分支不只列HashMap、TreeMap这些名字,要体现设计差异:
立即学习“Java免费学习笔记(深入)”;
- 按底层结构分:数组+链表/红黑树(HashMap)、红黑树(TreeMap)、哈希表+双向链表(LinkedHashMap)
- 按排序能力分:“无序(HashMap)”、“自然/定制排序(TreeMap)”、“插入顺序(LinkedHashMap)”
- 按线程安全分:普通版 vs Collections.synchronizedXxx() vs ConcurrentHashMap(强调分段锁/CAS优化)
Hashtable单独标出并注明“已基本淘汰,仅兼容遗留代码”,避免初学者误用。
补全关键支撑点,避免知识断层
除了主干集合类,导图右下角或独立分支建议加入以下四类“支撑性知识点”,它们常被忽略但面试和调试中高频出现:
- Iterator与fail-fast机制:说明遍历时修改集合会抛ConcurrentModificationException,以及如何安全删除(用iterator.remove())
- Comparable vs Comparator:前者是类内自然排序(实现接口),后者是外部定制排序(传入对象)
-
泛型擦除与类型安全:强调编译期检查、运行时无泛型信息,解释为什么不能new ArrayList
[] - 常见转换关系:如Arrays.asList()返回不可扩容List;Collections.unmodifiableList()生成只读视图
不复杂但容易忽略。


















