Map.putAll方法——追加另一个Map对象到当前Map集合(转)

该方法用来追加另一个Map对象到当前Map集合对象,它会把另一个Map集合对象中的所有内容添加到当前Map集合对象。

语法  putAll(Map<? extends K,? extends V> m) 

m:一个Map集合对象。

典型应用  本示例创建一个Map集合对象,为它添加一些内容并输出该集合的大小,然后创建第二个Map集合对象,也添加一些内容,输出集合大小,最后把第二个Map集合添加到第一个Map集合对象,再次输出第一个集合的大小。运行结果如图1.28所示。  

public static void main(String[] args) {
  Map map1 = new HashMap();      //定义Map集合对象
    map1.put("apple", "新鲜的苹果");     //向集合中添加对象
    map1.put("computer", "配置优良的计算机");
    map1.put("book", "堆积成山的图书");
    System.out.println("第一个Map集合大小为:"+map1.size()) //输出集合长度
    Map map2 = new HashMap();      //定义Map集合map2
    map2.put("apple2", "新鲜的苹果");     //向集合中添加对象
    map2.put("computer2", "配置优良的计算机");
    map2.put("book", "堆积成山的图书");
    System.out.println("第二个Map集合大小为:"+map2.size()); //输出集合长度
    System.out.println("把第二个Map集合添加到第一个Map集合中");
    map1.putAll(map2);        //将map2中的对象添加到map1中
    System.out.println("整合后的第一个Map集合大小为:"+map1.size());
}

整合后的Map集合大小是5而不是6,那是因为两个Map集合中有一个重复的键名“book”,Map集合的键名是不能重复的,所以新的“book”键值取代了旧的“book”键值。

posted @ 2014-06-12 23:37  沧海一滴  阅读(12567)  评论(0编辑  收藏  举报