Tree继承于AbstractMap,是一个有序的key-value集合。Tree实现了Serializable接口,支持实例化。Tree基于红黑树实现,该映射根据其建的自然顺序进行排序,或者根据提供的Comparator进行排序,具体取决于使用的构造方法
1、TreeMap构造器
1.1、使用键的自然顺序构造一个新的、空的树映射
TreeMap<Integer, String>()
1.2、构造一个新的、空的树映射,该映射根据给定比较器进行排序
TreeMap(Comparator<? super K> comparator)
1.3、构造一个与给定映射具有相同映射关系的新的树映射,该映射根据其键的自然顺序进行排序
TreeMap(Map<? extends K,? extends V> m)
1.4、构造一个与指定有序映射具有相同映射关系和相同排序顺序的新的树映射
TreeMap(SortedMap<K,? extends V> m)
2、TreeMap常用方法
2.1、在集合中添加键值对,map(key,value)
map.put(1, "str");
2.2、判断是否存在key,containsKey(key)
map.containsKey("str5");
2.3、判断是否存在value,containsValue(value)
map.containsValue(1);
2.4、清空map,clear()
map.clear();
2.5、判断是否为空,isEmpty()
map.isEmpty();
2.6、返回一个与此映射中的最小键关联的键值对;如果为空,则返回 null,firstEntry()
map.firstEntry();
2.7、返回此映射中当前第一个(最低)键,firstKey()
map.firstKey();
2.8、返回与此映射中的最大键关联的键值对;如果为空,则返回 null,lastEntry()
map.lastEntry();
2.9、返回映射中当前最后一个(最高)键,lastKey()
map.lastKey();
2.10、返回一个键值对,它与严格大于给定键的最小键关联;如果不存在这样的键,则返回 null,higherEntry(K key)
map.higherEntry(5);
2.11、返回严格大于给定键的最小键;如果不存在这样的键,则返回 null,higherKey(K key)
map.higherKey(5);
2.12、返回一个键值对,它与严格小于给定键的最大键关联;如果不存在这样的键,则返回 null,lowerEntry(K key)
map.lowerEntry(5);
2.13、返回严格小于给定键的最大键;如果不存在这样的键,则返回 null,lowerKey(K key)
map.lowerKey(5);
2.14、返回此映射的部分视图,其键值严格小于 toKey,headMap(K toKey)
map.headMap(5);
2.15、返回此映射的部分视图,其键值的范围从 fromKey(包括)到 toKey(不包括),subMap(K fromKey, K toKey)
map.subMap(1, 5);