022 如何决定使用 HashMap 还是 TreeMap?

如何决定使用 HashMap 还是 TreeMap?

答:

区别

  • TreeMap<K,V>的Key值是要求实现java.lang.Comparable,所以迭代的时候TreeMap默认是按照Key值升序排序的;

  • TreeMap的实现是基于红黑树结构。适用于按自然顺序或自定义顺序遍历键(key)。

  • HashMap<K,V>的Key值实现散列hashCode(),分布是散列的、均匀的,不支持排序;

  • 数据结构主要是桶(数组),链表或红黑树。适用于在Map中插入、删除和定位元素。

结论

  • 如果你需要得到一个有序的结果时,就应该使用TreeMap(因为HashMap中元素的排列顺序是不固定的)。

  • 大多不需要排序的时候我们会使用HashMap,因为HashMap有更好的性能。

参考博文:https://www.cnblogs.com/javazhiyin/p/11652526.html

猜你喜欢

转载自www.cnblogs.com/ynzj123/p/12683608.html
今日推荐