UML集合的继承结构图Map
2021-05-25 09:42:54 4 举报
Map
作者其他创作
大纲/内容
TreeMap
Properties
TreeMap集合底层的数据结构是一个二叉树。
HashMap集合底层是哈希表数据结构,是非线程安全的。在JDK8之后,如果哈希表单向链表中元素超过8个,单向链表这种数据结构会变成红黑树数据结构。当红黑树上的节点数量小于6时,会重新把红黑树变成单向链表数据结构这种方式也是为了提高检索效率,二叉树的检索会再次缩小扫描范围。提高效率。初始化容量是16,默认加载因子.75扩容是:扩容之后的容量是愿容量的2倍。HashMap集合的key和value允许null
SortedMap集合的key存储元素的特点:首先是无序不可重复的,另外放在SortrdMap集合key部分的元素会自动按照大小顺序排序,称为可排序的集合。
Hashtable
<<interface>>SortedMap
1、Map集合和Collection集合没有关系。2、Map集合以key和value的这种键值对的方式存储元素。3、key和value都是存储java对象的内存地址。4、所有Map集合的key特点:无序不可重复。Map集合的key和Set集合存储元素特点相同。
<<interface>>Map
HashMap
Properties是线程安全的,因为继承Hashtable,另外Properties存储元素的时候也是采用key和value的形式存储,并且key和value只支持String类型,不支持其它类型。Properties被称为属性类。
Hashtable集合底层也是哈希表数据结构,是线程安全的,其中所有的方法都带有synchronized关键字,效率较低,现在使用较少了,因为控制线程安全有其它更好的方案。Hashtable的key和value不允许nullHashtable集合的初始化容量11Hashtable集合扩容是:原容量*2+1

收藏
0 条评论
下一页
为你推荐
查看更多