【数据结构】Java集合框架入门(一)
Java集合框架入门 ——基础概述
目录
## 结构简图:
Collection:接口
|---- List接口
| |---- Linkedlist //双向链表,非同步,便于操作
| |---- ArrayList //数组,非同步,便于查找,相比于Vector效率更高
| |---- Vector //数组,同步,线程安全,多线程考虑替换ArrayList
|----- Set接口
| |---- SortedSet接口
| | |---- TreeSet //TreeMap,有序,唯一
| |----------- HashSet //HashMap,无序,唯一,线程不同步,不安全
| |---- LinkedHashSet //LinkedHashMap,有序,唯一,不安全
|----Queue接口
Map:接口
|---- SortedMap接口
| |----TreeMap //红黑树,有序
|----------- HashTable //哈希表,键值不可为null,线程同步,迭代器enumerator
|----------- HashMap //哈希表,键值可为null,线程不同步,迭代器iterator
| |---- LinkedHashMap //链表+哈希表,有序,不可重复(覆盖),不安全
|----------- WeakHashMap //哈希表,弱数据类型
|----------- IdentityHashMap //哈希表,允许重复
## 集合选取原则:
键值对象?
|--是:Map(排序?)
| |--是:TreeMap
| |--否:HashMap
|--否:Collection(唯一?)
|--是:Set(排序?)
|--是:TreeSet
|--否:HashSet
|--否:List(安全?)
|--是:Vector
|--否:ArrayList/LinkedList
|--查询:ArrayList
|--操作:LinkedList