Java.util.EnumMap 类

java.util.EnumMap.putAll() 方法用于将指定映射中的所有映射复制到此映射map。这些映射将替换此映射对指定映射中当前任何键的任何映射。

语法

public void putAll(Map<? extends K,? extends V> m)

这里,K 和 V 分别是键和值的类型由容器维护。

参数

m 指定要存储在此映射中的映射。

返回值

void类型。

异常

抛出 NullPointerException,如果指定的映射为 null,或者指定映射中的一个或多个键为 null。

示例:

在下面的示例中,java.util.EnumMap.putAll()方法用于将所有映射从Map2复制到Map1

import java.util.*;

public class MyClass {

  //创建一个枚举
  public enum weekday{
    MON, TUE, WED, THU, FRI
  }

  public static void main(String[] args) {
    //创建枚举映射
    EnumMap<weekday,Integer> Map1 = 
        new EnumMap<weekday,Integer>(weekday.class);
    EnumMap<weekday,Integer> Map2 = 
        new EnumMap<weekday,Integer>(weekday.class);        

    //关联Map2中的值
    Map2.put(weekday.MON, 1);
    Map2.put(weekday.TUE, 2);
    Map2.put(weekday.WED, 3);
    Map2.put(weekday.THU, 4);
    Map2.put(weekday.FRI, 5);

    //打印Map1
    System.out.println("Before putAll, Map1 contains: " + Map1);    

    //将映射从Map2复制到Map1
    Map1.putAll(Map2); 

    //打印Map1
    System.out.println("After putAll, Map1 contains: " + Map1);  
  }
}

上述代码的输出将是:

Before putAll, Map1 contains: {}
After putAll, Map1 contains: {MON=1, TUE=2, WED=3, THU=4, FRI=5}