
Map接口
通過查看Map接口描述,發現Map接口下的集合與Collection接口下的集合,它們存儲數據的形式不同,如下圖。

Collection中的集合,元素是孤立存在的(理解為單身),向集合中存儲元素采用一個個元素的方式存儲。
Map中的集合,元素是成對存在的(理解為夫妻)。每個元素由鍵與值兩部分組成,通過鍵可以找對所對應的值。
Collection中的集合稱為單列集合,Map中的集合稱為雙列集合。
需要注意的是,Map中的集合不能包含重復的鍵,值可以重復;每個鍵只能對應一個值。
Map中常用的集合為HashMap集合、LinkedHashMap集合。
Map接口中常用集合概述
通過查看Map接口描述,看到Map有多個子類,這里我們主要講解常用的HashMap集合、LinkedHashMap集合。
HashMap:存儲數據采用的哈希表結構,元素的存取順序不能保證一致。由于要保證鍵的唯一、不重復,需要重寫鍵的hashCode()方法、equals()方法。
LinkedHashMap:HashMap下有個子類LinkedHashMap,存儲數據采用的哈希表結構+鏈表結構。通過鏈表結構可以保證元素的存取順序一致;通過哈希表結構可以保證的鍵的唯一、不重復,需要重寫鍵的hashCode()方法、equals()方法。
注意:Map接口中的集合都有兩個泛型變量,在使用時,要為兩個泛型變量賦予數據類型。兩個泛型變量的數據類型可以相同,也可以不同。
Map接口中的常用方法

put方法:將指定的鍵與值對應起來,并添加到集合中,方法返回值為鍵所對應的值。
使用put方法時,若指定的鍵(key)在集合中沒有,則沒有這個鍵對應的值,返回null,并把指定的鍵值添加到集合中;
使用put方法時,若指定的鍵(key)在集合中存在,則返回值為集合中鍵對應的值(該值為替換前的值),并把指定鍵所對應的值,替換成指定的新值。
get方法:獲取指定鍵(key)所對應的值(value)
remove方法:根據指定的鍵(key)刪除元素,返回被刪除元素的值(value)。
Map接口的方法演示
public class MapDemo { public static void main(String[] args) {//創建Map對象
Map map = new HashMap();//給map中添加元素
map.put("星期一