map
map 用於儲存具有對映關係的資料,因此 map 集合裡儲存著兩組值,一組值用於儲存 map 裡的 key,另外一組用於儲存 map 裡的 value
map 中的 key 和 value 都可以是任何引用型別的資料
map 中的 key 不允許重複,即同乙個 map 物件的任何兩個 key 通過 equals 方法比較中返回 false
key 和 vlaue 之間存在單向一對一關係,即通過指定的 key 總能找到唯一的,確定的 value。
map 常用方法
hashmap 和 hashtable 是 map 介面的兩個典型實現類
區別:hashtable 是乙個古老的 map 實現類,不建議使用
hashtable 是乙個執行緒安全的 map 實現,但 hashmap 是執行緒不安全的。
hashtable 不允許使用 null 作為 key 和 value,而 hashmap 可以
與 hashset 集合不能保證元素的順序的順序一樣,hashtable 、hashmap 也不能保證其中 key-value 對的順序
hashtable 、hashmap 判斷兩個 key 相等的標準是:兩個 key 通過 equals 方法返回 true,hashcode 值也相等。
hashtable 、hashmap 判斷兩個 value相等的標準是:兩個 value 通過 equals 方法返回 true
linkedhashmap
linkedhashmap 是 hashmap 的子類
linkedhashmap 可以維護 map 的迭代順序:迭代順序與 key-value 對的插入順序一致
properties
properties 類是 hashtable 的子類,該物件用於處理屬性檔案
由於屬性檔案裡的 key、value 都是字串型別,所以 properties 裡的 key 和 value 都是字串型別的
treemap
treemap 儲存 key-value 對時,需要根據 key 對 key-value 對進行排序。treemap 可以保證所有的 key-value 對處於有序狀態。
treemap 的 key 的排序:
自然排序:treemap 的所有的 key 必須實現 comparable 介面,而且所有的 key 應該是同乙個類的物件,否則將會丟擲classscastexception
定製排序:建立 treemap 時,傳入乙個 comparator 物件,該物件負責對 treemap 中的所有 key 進行排序。此時不需要 map 的 key 實現 comparable 介面
java集合框架(map集合)
map集合 該集合儲存鍵值對,一對一對往裡存,而且要保證鍵值得唯一性。一 基本方法 1.新增 put k key,v value 將指定的值與此對映中的指定鍵關聯 可選操作 putall map m 從指定對映中將所有對映關係複製到此對映中 可選操作 2.刪除 從此對映中移除所有對映關係 可選操作 ...
Java集合 雙列集合Map
map集合 前面我們提到過的collection集合以及他的子實現類,這些集合屬於單列集合,而在實際開發中,經常使用到的還有雙列集合map集合。在具體講雙列集合之前,再來回憶一下單列集合。在單列集合中,首先分為list和set兩個集合,而list集合又分為 arraylist,vector,和lin...
java 遍歷map集合
map遍歷 jdk api對map遍歷的支援 set entryset 返回此對映所包含的對映關係的 set 檢視。setkeyset 返回此對映中所包含的鍵的 set 檢視。都是返回set檢視,但乙個是對映關係的,乙個是對映所包含鍵的set檢視。注意返回的是無序。對於這兩個方法理解可以看看demo...