Set
主要有三个子类:
HashSet
- 底层数据结构是哈希表+红黑树
TreeSet集合
- 底层数据结构时红黑树
- 保证元素的排序方式
LinkedHashSet
- 底层数据结构由哈希表和双向链表组成
HashSet
实际上就是HashMap,实现了Set接口
value是一个Object,所有的value都是它
TreeSet
底层是TreeMap,实现了NavigableSet接口
LinkedHashSet
迭代有序
底层与LinkedHashMap相同
初始容量与迭代无关,LinkedHashSet迭代的是双向链表
总结
Set集合的底层就是Map,没什么特别好分析的,搞懂了Map,Set也就懂了