「这是我参与11月更文挑战的第22天,活动详情查看:2021最后一次更文挑战」
前言
大家好,我是程序猿小白 GW_gw,很高兴能和大家一起学习进步。
关于Java的集合框架的概述就到这里了,如想要了解Collection集合可以点击下方连接直达。
以下内容部分来自于网络,如有侵权,请联系我删除,本文仅用于学习交流,不用作任何商业用途。
摘要
本文主要介绍Java集合框架下的Map集合体系。
1. Map体系
Map体系是用于保存具有映射关系的数据。都是Key-value的形式来保存,每个Key都是不可重复的,用来标识每项数据,即通过key来获取对应的value值。
-
EnumMap类:与枚举类型键一起使用的专用 Map实现类,不能存放null键,可以存放null值,此实现不是同步的。
-
WeakHashMap类:以弱键 实现的基于哈希表的
Map,可以存放null键和null值,此类不是同步的。 在进行垃圾回收的时候会自动回收键值对。 -
IdentityHashMap类:此类利用哈希表实现
Map接口,不保证迭代顺序。比较键(和值)时使用引用相等性代替对象相等性。也就是说只有引用值相等才算相等。这和其他正常的Map有很大区别。可以存放null键和null值,此类不是同步的。 -
HashMap类:基于哈希表的
Map接口的实现,不保证迭代顺序。可以存放null 值和 null 键,此类不是同步的。- LinkedHashMap类:
Map接口的哈希表和链接列表实现,可以保证迭代顺序。即使重新插入了已经存在的键也不会改变插入顺序。可以存放null键和null值,此类不是同步的。
- LinkedHashMap类:
-
HashTable类:此类实现一个哈希表,该哈希表将键映射到相应的值。不能存放null键和null值,此类是同步的。
- Properties类:
Properties类表示了一个持久的属性集。Properties可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。
- Properties类:
-
SortedMap接口:进一步提供了关于键的总体排序 的 Map。根据其键的自然顺序进行排序的,或者根据提供的 Comparator 进行排序。
- TreeMap类:此类基于红黑树实现,根据其键的自然顺序进行排序,或跟据提供的Comparator进行排序。此实现不是同步的。
小结
以上就是集合框架中的Map体系的一些常用的实现类和接口,接下来我们逐个学习使用。希望对读者有所帮助,如有不正之处,欢迎留言评论。