Map
- key-value映射
HashMap
- Key无序,唯一(Set)
- Value无序,不唯一(Collection)
- Hashmap:数据-链表(1.7) 数组-链表-红黑树(1.8)
- hashmap线程不安全,效率较高,hashtable线程安全(synchronized),效率低
- hashmap中key和value都可以为空
- 负载因子,默认0.75
- 初始容量是 2^n
- 扩容的时候扩容两倍
- hashmap冲突处理方法采用链地址法
- 根据泊松分布,确定的一个值8,某个元素冲突8次以后,链表转成红黑树
- 1.7,元素叫entry,1.8,元素叫node
- 1.8添加元素,扰动函数,
LinkedHashMap
- 有序的HashMap,速度快
- 链表
TreeMap
- 有序,速度没有hash快
- 红黑树
Set与Map
- 采用了相同的数据结构,只用于map的key存储数据