如何决定使用 HashMap 还是 TreeMap?
- TreeMap<K,V>的Key值是要求实现java.lang.Comparable,TreeMap 默认是按照Key值升序排序的;
HashMap<K,V>的Key值实现散列hashCode(),分布是散列的、均匀的,不支持排序; - TreeMap的实现是基于红黑树结构;
HashMap 的数据结构主要是桶(数组),链表或红黑树; - TreeMap 适用于按自然顺序或自定义顺序遍历键(key)。 HashMap 适用于在Map中插入、删除和定位元素。