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()
如果鍵相同碧囊,會出現(xiàn)值覆蓋。map集合沒有迭代器
取出Map集合元素的方式:
1纤怒、用keySet()方法糯而,取出Map集合的所有鍵key,存儲與Set中
使用迭代器Iterator泊窘,對Set迭代熄驼,取到對應(yīng)鍵key的值value
2像寒、用entrySet()方法,取出Map集合的所有鍵值映射視圖瓜贾,存儲在Set中
使用迭代器Iterator诺祸,對Set迭代,取到對應(yīng)視圖
使用 Map.Entry 中的方法 getKey(),getValue(),分別獲取鍵和值
Map.Entry 是Map接口中的內(nèi)部接口常見子類
Hashtable:哈希表祭芦,是同步的筷笨,不允許null鍵,null值
HashMap:哈希表龟劲,不是同步的胃夏,允許null鍵,null值
TreeMap:二叉樹昌跌,不同步构订。可以對map中的鍵進(jìn)行排序什么時候使用Map集合避矢?
當(dāng)需求中出現(xiàn)映射關(guān)系悼瘾,應(yīng)當(dāng)最先想到map集合