基本特点:
1.key按照顺序大小排序,默认的是从小到大
2.key不能为null,value可以为null
3.key不能重复,value可以重复
4.底层数据结构是红黑树
TreeMap继承关系:
public class TreeMap<K,V>
extends AbstractMap<K,V>
implements NavigableMap<K,V>, Cloneable, java.io.Serializable
TreeMap实现NavigableMap接口,支持一系列的导航方法,返回具有是顺序的key集合
NavigableMap接口:
public interface NavigableMap<K,V> extends SortedMap<K,V>
NavigableMap接口继承走SortedMap接口,SortedMap接口具有排序工能,具有比较器类Comparator
比较器类说明:
Comparable和Comparator比较:
Comparable接口中提供方法:
public interface Comparable<T> {
public int compareTo(T o);
}
该接口提供了一个compareTo方法,返回值分别为 -1,0,1
该接口在类内部作为比较器使用,一旦确定比较属性,就不能更改
Compatator接口中提供方法:
public interface Comparator<T> {
int compare(T o1, T o2);
}
Compatator接口中提供了compare方法,返回值分别为 小于0,等于0,大于0
该接口在类外部实现,自定义实现比较接口过程使用该接口
TreeMap使用场景:
对数据进行排序