2023新版千鋒教育Java視頻教程(Java 0基礎(chǔ),java入門,java自

Map學(xué)習(xí)的總結(jié)
首先是Map的四種實(shí)現(xiàn)類:
第一種:HashMap
最常用,根據(jù)鍵的hashCode值來存儲(chǔ)數(shù)據(jù)。根據(jù)鍵可以直接獲取它的值,具有很快的訪問速度。HashMap最多只允許一條記錄的鍵為null,允許多條記錄值為null。是非同步的。
如果存入自定義對(duì)象,要重寫hashCode方法和equals方法,確保對(duì)象的唯一性。
第二種:HashTable
與HashMap相似,但不同的是:key和value的值均不允許為null;它支持線程同步,即任意時(shí)刻只有一個(gè)線程能寫HashTable,因此導(dǎo)入HashTable在寫入時(shí)會(huì)比較慢。
第三種:TreeMap
能把保存的記錄按照key來排序,默認(rèn)是升序,也可以指定排序的比較器,和TreeSet一樣。當(dāng)使用Iterator遍歷TreeMap時(shí),得到的記錄是排過序的。TreeMap不允許key為null,且為非同步的。
第四種:LinkedHashMap
保存了記錄插入時(shí)的順序,即遍歷的時(shí)候,得到的順序是先插入先出來,比HashMap慢。key和value允許為空,非同步的。
然后是Map集合中的常用方法如下:
public V put(K key, V value): 把指定的鍵與指定的值添加到Map集合中。
public V remove(Object key): 把指定的鍵 所對(duì)應(yīng)的鍵值對(duì)元素 在Map集合中刪除,返回被刪除元素的值。
public V get(Object key) 根據(jù)指定的鍵,在Map集合中獲取對(duì)應(yīng)的值。
boolean containsKey(Object key) 判斷集合中是否包含指定的鍵。
public Set<K> keySet(): 獲取Map集合中所有的鍵,存儲(chǔ)到Set集合中。
public Set<Map.Entry<K,V>> entrySet(): 獲取到Map集合中所有的鍵值對(duì)對(duì)象的集合(Set集合)。