Map(映射,双列集合)
- 一次存一对,键值对。要保证键的唯一性。
将键映射到值的对象
共性的功能:Map<K,V>
1、添加
v put(K key,V value);
void putAll(Map<K,V> map);
2、删除
void clear(); 清空集合
3、判断
boolean containsKey(Object key)
boolean containsValue(Object value)
boolean isEmpty()
4、获取
int size();
v get(Object key)
set keySet() 获取Map所有键的set集合
set entrySet() 获取Map中的键值对视图
Collection value()
如果键相同,会出现值覆盖。map集合没有迭代器
取出Map集合元素的方式:
1、用keySet()方法,取出Map集合的所有键key,存储与Set中
使用迭代器Iterator,对Set迭代,取到对应键key的值value
2、用entrySet()方法,取出Map集合的所有键值映射视图,存储在Set中
使用迭代器Iterator,对Set迭代,取到对应视图
使用 Map.Entry 中的方法 getKey(),getValue(),分别获取键和值
Map.Entry 是Map接口中的内部接口常见子类
Hashtable:哈希表,是同步的,不允许null键,null值
HashMap:哈希表,不是同步的,允许null键,null值
TreeMap:二叉树,不同步。可以对map中的键进行排序什么时候使用Map集合?
当需求中出现映射关系,应当最先想到map集合