Java集合框架为程序提供了统一管理和操作数据对象的标准方式,其核心由Collection与Map两大根接口构成。这两者并不存在继承关系,而是分别从不同维度抽象了数据的存储形式。Collection面向一组独立元素的集合,Map面向键值对的映射结构。

Collection根接口继承体系
Collection位于java.util包下,是最基础的集合接口。它定义了添加、删除、遍历元素等通用方法,并向下延伸出三个主要子接口。
主要子接口
- List:有序、可重复,常用实现有ArrayList、LinkedList。
- Set:无序、不可重复,常用实现有HashSet、TreeSet。
- Queue:队列结构,常用实现有LinkedList、PriorityQueue。
简化继承示意
// Collection继承体系简写
interface Collection<E> { }
interface List<E> extends Collection<E> { }
interface Set<E> extends Collection<E> { }
interface Queue<E> extends Collection<E> { }
class ArrayList<E> implements List<E> { }
class HashSet<E> implements Set<E> { }
class LinkedList<E> implements List<E>, Queue<E> { }
Map根接口继承体系
Map用来保存键值对,键不可重复。它本身不是Collection的子接口,但在框架中地位同等重要。
主要子接口与实现
| 接口/类 | 说明 |
|---|---|
| Map | 根接口,定义put、get等方法 |
| SortedMap | 键排序的Map子接口 |
| HashMap | 基于哈希表的常用实现 |
| TreeMap | 基于红黑树,实现SortedMap |
代码示例
// Map继承体系简写
interface Map<K, V> { }
interface SortedMap<K, V> extends Map<K, V> { }
class HashMap<K, V> implements Map<K, V> { }
class TreeMap<K, V> implements SortedMap<K, V> { }
如何选择根接口下的实现
如果只需存储单列数据并频繁按索引访问,应选List下的ArrayList。若要保证元素唯一性,使用Set。当数据以键关联值时,必须使用Map体系。理解Collection与Map的变量继承体系,能避免错用数据结构导致的性能问题。
注意:Collection和Map之间不能通过强制类型转换互转,需要借助工具方法如keySet或entrySet进行桥接处理。
小结
Java集合框架以Collection和Map为两大根接口,分别统领单列数据与双列映射数据。掌握它们的继承分支,是编写高效Java代码的基础。
Java集合框架CollectionMap修改时间:2026-07-28 14:21:22