Map:双列数据,存储key-value对的数据----类似于高中的函数:y=f(x)
一. 包含:HashMap:作为Map的主要实现类,线程不安全,效率高,存储null的key-value---底层数组,链表,红黑树
---LinkedHashMap:保证遍历Map元素时,可以按照添加的顺序实现遍历。在原有的hashmap底层结构基础上,添加了一对指针,指向前一个和后一个。适合频繁的遍历操作
TreeMap:保证按照添加的key-value对进行排序,实现排序遍历,此时考虑key的自然排序或定制排序---底层使用红黑树
Hashtable:作为Map的古老实现类,线程安全,效率低,
--Properties:常用来处理配置文件,keyvalue都是string类型
二.Map的理解:
1 key:无序的,不可重复的,使用set存储所有的key----key所在的类要重写equals()和hashCode()
2 value:无序的,可重复的,
3.一个键值对:key-value:构成了一个entry对象;entry时无序的,不可重复的,使用set存储所有的entry