集合分类
- List
- Set
- Map
List(数据可重复)
- ArrayList
- Vector
- LinkedList
ArrayList
数组实现,查询快,增删慢,线程不安全
Vector
数组实现,查询快,增删慢,线程安全
LinkedList
链表实现,查询慢,增删快,线程不安全
Set(数据不可重复)
- HashSet
- TreeSet
HashSet
HashTable实现
TreeSet
树实现
Map
- HashMap
- LinkedHashMap
- ConcurrentHashMap
HashMap
线程不安全
jdk1.8前,数组+链表实现
jdk1.8后,链表长于8,转变为红黑树
LinkedHashMap
双向链表实现
ConCurrentHashMap
数据结构同HashMap
线程安全
分段(segment)加锁,每个segment下都是一个完整的数组+链表的结构