- HashMap存取的顺序不一致,无序性,key值对象hashCode和equals方法equals为true,要求hashCode值必须相等
- Hashtable底层采用数组+链表的方式实现,线程安全
- LinkedHashMap是HashMap的子类,可以2种遍历顺序可以选择,是有序的,在HashMap存储数据的基础上引入了双向链表,通过链表可以记录顺序自定义缓存会增加额外的时间和空间开销
- TreeMap底层采用红黑树,key要求Comparable接口或者Comparator接口的实现
- HashMap和LinkedHashMap存储速度优于TreeMap
- 完成所有元素的添加操作后排序则TreeMap明显优于HashMap
key要求Comparable或者构建TreeMap对象时指定Comparator
equals和compareTo - ConcurrentHashMap是HashMap的线程安全版,JDK1.7采用分段锁实现,JDK1.8采用的是CAS+synchronized实现
map总结
最新推荐文章于 2024-07-24 17:27:32 发布