HashMap和TreeMap有什么区别?
这个问题在这里已经有了答案:
TreeMap
是一个SortedMap
的例子,这意味着键的顺序可以被排序,并且当遍历键时,你可以期望它们按顺序排列。
另一方面, HashMap
没有这样的保证。 因此,在迭代HashMap
的键时,不能确定它们将以什么顺序。
一般来说, HashMap
效率会更高,所以只要你不关心密钥的顺序就可以使用它。
HashMap
由Hash Table实现, TreeMap
由Red-Black tree
。 HashMap
和TreeMap
之间的主要区别实际上反映了Hash
和Binary Tree
之间的主要区别,即迭代时,TreeMap保证可以通过元素的compareTo()方法或TreeMap构造函数中设置的比较器来确定键顺序。
看看下面的图表。
总结一下:
取自:HashMap与TreeMap
链接地址: http://www.djcxy.com/p/92167.html上一篇: What is the difference between a HashMap and a TreeMap?