目录
#博学谷IT学习技术支持#
1Map集合概述
Interface Map<K,V> K:键的数据类型;V:值的数据类型
键不能重复,值可以重复
键和值是一一对应的,每一个键只能找到自己对应的值
(键 + 值) 这个整体 我们称之为“键值对”或者“键值对对象”,在Java中叫做“Entry对象”。
1.1Map集合的基本功能
V put(K key,V value) | 添加元素 |
V remove(Object key) | 根据键删除键值对元素 |
void clear() | 移除所有的键值对元素 |
boolean containsKey(Object key) | 判断集合是否包含指定的键 |
boolean containsValue(Object value) | 判断集合是否包含指定的值 |
boolean isEmpty() | 判断集合是否为空 |
int size() | 集合的长度,也就是集合中键值对的个数 |
1.2Map集合的获取功能
V get(Object key) | 根据键获取值 |
Set<K> keySet() | 获取所有键的集合 |
Set<Map.Entry<K,V>> entrySet() | 获取所有键值对对象的集合 |
K getKey() | 获得键 |
V getValue() | 获得值 |
2.HashMap
2.1HashMap的特点小结
HashMap是Map里面的一个实现类。
没有额外需要学习的特有方法,直接使用Map里面的方法就可以了
HashMap跟HashSet一样底层是哈希表结构的
依赖hashCode方法和equals方法保证键的唯一
如果键要存储的是自定义对象,需要重写hashCode和equals方法
3.TreeMap
3.1TreeMap的特点
TreeMap是Map里面的一个实现类。
没有额外需要学习的特有方法,直接使用Map里面的方法就可以了
TreeMap跟TreeSet一样底层是红黑树结构的
3.2TreeMap小结
TreeMap底层是红黑树结构的
依赖自然排序或者比较器排序,对键进行排序
如果键存储的是自定义对象,需要实现Comparable接口或者在创建TreeMap对象时候给出比较器排序规则