之前我們看過(guò)了兩種類(lèi)型的集合,ArrayList集合和LinkedList集合,兩種集合各有優(yōu)勢(shì),我們不具體說(shuō)了,但是本篇要看的集合可以完成它們完成不了的任務(wù)。比如:現(xiàn)有一篇文章,要你統(tǒng)計(jì)其中出現(xiàn)了哪些單詞,每個(gè)單詞總共出現(xiàn)了幾次。這個(gè)問(wèn)題很明顯需要記錄兩個(gè)變量(某單詞及其出現(xiàn)次數(shù)),但是我們之前介紹的集合都只能同時(shí)存儲(chǔ)一種類(lèi)型的變量,無(wú)法實(shí)現(xiàn)對(duì)應(yīng)的效果。
     我們的HashMap又可以叫做鍵值對(duì)集合(官方名稱(chēng)映射),比如:

public class Test_Class {    public static void main(String[] args){
        HashMap<String,Integer> map = new HashMap<String, Integer>();        map.put("hello",10);
    }
}/*第一條記錄,保存了hello這個(gè)單詞在文章中總共出現(xiàn)10次*/


     一、超接口Map
          想要研究一個(gè)具體的類(lèi),先要看看它的父類(lèi)或者父接口。HashMap實(shí)現(xiàn)了Map<K,V>接口,K表示鍵,V表示值,一個(gè)鍵對(duì)應(yīng)一個(gè)值,整個(gè)集合中鍵是唯一的不可重復(fù)。

public interface Map<K,V> {   int size();   boolean isEmpty();   boolean containsKey(Object key);   boolean containsValue(Object value);   V get(Object key);   V put(K key, V value);   V remove(Object key);   void putAll(Map<? extends K, ? extends V> m);   void clear();   Set<K> keySet();   Collection<V> values();
   Set<Map.Entry<K, V>> entrySet();
   ......   //源碼中方法很多,我們簡(jiǎn)單介紹幾個(gè)常用的}

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式