Java Basic->Collections->Overview
先抛一个问题,用一个类似树形的结构,介绍下 Java 的集合类数据结构:有哪些,从简单到复杂,有怎么样的继承关系。
下面的内容,基于 Java 6 展开
在《Thinking in Java》里面有一个现成的版本,所以不重新造轮子了,照着画一下,补充了 Queue 相关的部分。
另,参考Collections Framework Overview的内容,放一个实际使用过程中,集合类功能实现的表格。
Implementations | ||||||
---|---|---|---|---|---|---|
Hash Table | Resizable Array | Balanced Tree | Linked List | Hash Table + Linked List | ||
Interfaces | Set | HashSet | TreeSet | LinkedHashSet | ||
List | ArrayList | LinkedList | ||||
Deque | ArrayDeque | LinkedList | ||||
Map | HashMap | TreeMap |
先这些,后续以此为根,参照源码,依次展开。
参考
- Java Platform, Standard Edtion 6 API Specification
- 《Thinking in Java》11、17章
- Collections Framework Overview