TreeMap是一个有序的key-value集合,它是通过红黑树实现的。
TreeMap继承于AbstractMap,所以它是一个Map,即一个key-value集合。
TreeMap实现了NavigableMap接口,意味着它支持一系列的导航方法。比如返回有序的key集合。
TreeMap实现了Cloneable接口,意味着它能被克隆。
TreeMap实现了java.io.Serializable接口,意味着它支持序列化。
TreeMap基于红黑树(Red-Blacktree)实现。该映射根据其键的自然顺序进行排序,或者根据创建映射时提供的Comparator进行排序,具体取决于使用的构造方法。
TreeMap的基本操作containsKey、get、put和remove的时间复杂度是log(n)。
另外,TreeMap是非同步的。它的iterator方法返回的迭代器是fail-fastl的。
是一种自平衡二叉查找树
(1)检索效率O(logn)
(2)红黑树的五点规定:
a每个节点都只能是红色或者黑色
b根节点是黑色
c每个叶节点(NIL节点,空节点)是黑色的。
d从每个叶子到根的所有路径上不能有两个连续的红色节点。
e从任一节点到其每个叶子的所有路径都包含相同数目的黑色节点。
TreeMap默认按照key递增排序
得到结果:
以上就是极悦java培训机构的小编针对“Java入门编程,treemap的使用”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习