Java核心API -- 8(Map集合)

 

1. Map集合java

    Java.util.Map接口數據結構

        |--HashMap實現類ide

        |--TreeMap實現類spa


2. HashMap實現類3d

    Map接口定義的集合又稱爲查找表,用於存儲所謂「Key-Value」鍵值對。Key能夠當作是Value的索引。而每每Key是Value的一部份內容。指針

     1)Key不能夠重複,但所保存的Value能夠重複。orm

     2)根據內部結構的不一樣,Map接口有多種實現類,其中經常使用的有內部爲hash表實現的HashMap和內部爲排序二叉樹實現的TreeMap。一樣這樣的數據結構在存放數據時,也不建議存放兩種以上的數據類型,因此,一般咱們在使用Map時也要使用泛型約束存儲內容的類型。blog

     3)建立Map時使用泛型,這裏要約束兩個類型,一個是key的類型,一個是value的類型。排序

     4)基本原理圖:索引

        wKioL1WSP5HhDQcBAACLrOw-f-Y469.jpg

    5)HashMap集合中經常使用的方法:

        ① V put(K Key,V value):將元素以Key-Value的形式放入map。若重複保存相同的key時,實際的操做是替換Key所對應的value值。 

        ② V get(Object key):返回key所對應的value值。若是不存在則返回null。

        ③ boolean containsKey(Object Key):判斷集合中是否包含指定的Key。

        ④ boolean containsValue(Object value):判斷集合中是否包含指定的Value。

    6)若給定的key在map中不存在則返回null,因此,原則上在從map中獲取元素時要先判斷是否有該元素,以後再使用,避免空指針異常的出現。Map在獲取元素時很是有針對性,集合想獲取元素須要遍歷集合內容,而Map不須要,你只要給他特定的key就能夠獲取該元素。


    案例12:

        wKioL1WSP7WR9Z0qAAJvHbCtQdE347.jpg


    案例13: 

        wKioL1WSP96yORQuAAHRdfGfa1M333.jpg

    結果:

        wKiom1WSPirBS9wuAAAzFg6B89A863.jpg


    7)遍歷HashMap方式一:獲取全部的key並根據key獲取value從而達到遍歷的效果(即迭代Key)。keySet()方法:是HashMap獲取全部key的方法,該方法能夠獲取保存在map下全部的key並以Set集合的形式返回。


    案例14:

        wKioL1WSQAzBJMalAANZ-GXFOo0009.jpg

    結果:

        wKioL1WSQCGgszCGAAC4Sbjixl8564.jpg


    8)Entry類,遍歷HashMap方式二:以「鍵值對」的形式迭代。Map支持另外一個方法entrySet():該方法返回一個Set集合,裏面的元素是map中的每一組鍵值對,Map以Entry類的實例來描述每個鍵值對。其有兩個方法:getKey()獲取key值;getValue()獲取value值。Entry也須要泛型的約束,其約束的泛型應該和Map相同!Entry所在位置:java.util.Map.Entry。


    案例15:

        wKiom1WSPoiCAsITAAOugDQas6w163.jpg

    結果:

        wKiom1WSPp3igtsBAAC7w1bUQDE969.jpg

相關文章
相關標籤/搜索