TreeMap
treemap可以根据key的大小存储k-v对,从而保证元素有序。treemap底层使用红黑树结构来实现。
类定义
继承了AbstractMap抽象类,实现了NavigableMap接口
1 | public class TreeMap<K,V> |
成员变量
1 | //比较器 |
构造方法
1 | public TreeMap() { |
entry
1 | //treemap中entry的定义,除了k、v还有左右父节点指针,颜色标志位 |
put
1 |
|
fixAfterInsertion
在红黑树中插入节点后,会让红黑树变得不平衡,需要调用该方法调整树结构
1 |
|
get
1 | public V get(Object key) { |
remove
1 |
|
fixAfterDeletion
1 | //被删除节点的为黑色时才需要进行结构调整 |