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

相关文章
相关标签/搜索