Java中Map部分

双列集合框架:Map

一、Map是什么?

JDK中常用的一个接口

二、存储结构的理解:

Map中的key:无序的、不可重复的,使用Set存储所的key —> key所在的类要重写equals和hashCode方法 (以HashMap为例)

Map中的value:无序的、可重复的,使用Collection存储所的value —>value所在的类要重写equals()

一个键值对:key-value构成了一个Entry对象。

Map中的entry:无序的、不可重复的,使用Set存储所的entry

三、常用实现类结构

Map:双列数据,存储key-value对的数据 ,类似于高中的函数:y = f(x)

HashMap:作为Map的主要实现类;线程不安全的,效率高;存储null的key和value

LinkedHashMap:保证在遍历map元素时,可以照添加的顺序实现遍历。
原因:在原的HashMap底层结构基础上,添加了一对指针,指向前一个和后一个元素。
对于频繁的遍历操作,此类执行效率高于HashMap。

TreeMap:保证照添加的key-value对进行排序,实现排序遍历。此时考虑key的自然排序或定制排序(底层使用红黑树)

Hashtable:作为古老的实现类;线程安全的,效率低;不能存储null的key和value

Properties:常用来处理配置文件(例如mysql的配置信息)。其中key和value都是String类型

猜你喜欢

转载自blog.csdn.net/m0_50654102/article/details/113887801