编程语言
首页 > 编程语言> > Java集合之Map接口(上)

Java集合之Map接口(上)

作者:互联网

一、Map集合接口简介:JCF的集合接口之一,Map<K,V>双列集合接口,其中K,V都是单独的集合,K集合只能是Set集合,V集合可以是任意集合(List或Set),

K中的每一个值称之为key(键),V中的每一个值称之为value(值),key与value的映射称之为entry(key-value),例如:{k1=v1, k2=v2, k3=v3}中的k1=v1就是一个entry

二、Map集合接口特点:

  2.1、Map集合中的元素并不是有序的

  2.2、K中的元素不可以重复,V中的元素可以重复

  2.3、K中的某个元素第一次添加,返回值是null

  2.4、K中的某个元素不是第一次添加,就用V中的对应元素替换之前的V中对应元素,返回值是之前V中对应的元素

三、Map集合接口常用方法:

  3.1、Map集合中存放数据:put(K,V),参数分别是K,V集合中的值

  3.2、根据K集合的值获取V集合的值:get(K),返回值是V集合的值

  3.3、根据K集合的值移除对应的Entry值:remove(K)

  3.4、获取Map集合中Entry值的个数:size()

  3.5、获取Map集合中的K集合:keySet()

  3.6、获取Map集合中的V集合:values()

  3.7、判断Map集合是否包含指定K值:containsKey(K)

  3.8、判断Map集合是否包含指定V值:containsValue(V)

  3.9、清空Map集合:clear()

  3.10、获取Entry对象值的集合:entrySet()

四、Map集合接口的遍历:Map集合中没有迭代器,集合没有迭代器就不能使用增强for循环

  4.1、Map集合遍历方式:

    4.1.1、遍历K集合中的值,利用K集合的值再取出每一个V集合的值:

      示例代码:

        

 

    4.1.2、先获取Map集合中的Entry,根据Entry对象值遍历:

      示例代码:

        

五、Map集合中K集合存入自定义对象:

  5.1、当K集合以自定义对象作为值时,如果两次K中的值相同,不管V集合中的值是否相同,两个都会存在,返回值都为null

  5.2、存入自定义对象去重解决方法:自定义对象需要覆盖equals和hashCode方法

  5.3、示例代码:

      

      

标签:Map,Java,自定义,元素,接口,集合,Entry
来源: https://www.cnblogs.com/acs996/p/16479183.html