Java EnumMap putAll() 方法



描述

Java EnumMap putAll(Map<? extends K,? extends V> m) 方法将指定映射中的所有映射复制到此映射。旧值将被替换。

声明

以下是 java.util.EnumMap.putAll() 方法的声明

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

参数

m − 要存储在此映射中的映射

返回值

此方法不返回任何值。

异常

NullPointerException − 指定的映射为 null,或者指定映射中一个或多个键为 null

将多个值添加到 Enum,Integer 对的 EnumMap 示例

以下示例演示了 Java EnumMap putAll() 方法的使用,以填充 EnumMap 实例。我们创建了一个枚举 Numbers。然后创建了两个 EnumMap 实例,分别为枚举 Numbers 和 Integer。添加了一些条目并打印了 enumMap。使用 putAll() 方法,enumMap 将填充第一个 enumMap 的值并打印。

package com.tutorialspoint;

import java.util.EnumMap;

public class EnumMapDemo {
   
   // create an enum
   public enum Numbers{ONE, TWO, THREE, FOUR, FIVE}; 

   public static void main(String[] args) {
      
      EnumMap<Numbers,Integer> map = 
         new EnumMap<>(Numbers.class);
		 
      EnumMap<Numbers,Integer> map2 = 
         new EnumMap<>(Numbers.class);

      // associate values in map
      map.put(Numbers.ONE, 1);
      map.put(Numbers.TWO, 2);
      map.put(Numbers.THREE,3);
      map.put(Numbers.FOUR, 4);

      // print the whole map
      System.out.println(map); 

      // copy the map
      map2.putAll(map);

      // print the map2
      System.out.println(map2); 
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

{ONE=1, TWO=2, THREE=3, FOUR=4}
{ONE=1, TWO=2, THREE=3, FOUR=4}

将多个值添加到 Enum,String 对的 EnumMap 示例

以下示例演示了 Java EnumMap putAll() 方法的使用,以填充 EnumMap 实例。我们创建了一个枚举 Numbers。然后创建了两个 EnumMap 实例,分别为枚举 Numbers 和 Strings。添加了一些条目并打印了 enumMap。使用 putAll() 方法,enumMap 将填充第一个 enumMap 的值并打印。

package com.tutorialspoint;

import java.util.EnumMap;

public class EnumMapDemo {
   
   // create an enum
   public enum Numbers{ONE, TWO, THREE, FOUR, FIVE}; 

   public static void main(String[] args) {
      
      EnumMap<Numbers,String> map = 
         new EnumMap<>(Numbers.class);

      EnumMap<Numbers,String> map2 = 
         new EnumMap<>(Numbers.class);
		 
      // associate values in map
      map.put(Numbers.ONE, "1");
      map.put(Numbers.TWO, "2");
      map.put(Numbers.THREE,"3");
      map.put(Numbers.FOUR, "4");

      // print the whole map
      System.out.println(map); 

      // copy the map
      map2.putAll(map);

      // print the map2
      System.out.println(map2);  
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

{ONE=1, TWO=2, THREE=3, FOUR=4}
{ONE=1, TWO=2, THREE=3, FOUR=4}

将多个值添加到 Enum,Object 对的 EnumMap 示例

以下示例演示了 Java EnumMap putAll() 方法的使用,以填充 EnumMap 实例。我们创建了一个枚举 Numbers。然后创建了两个 EnumMap 实例,分别为枚举 Numbers 和 Student 对象。添加了一些条目并打印了 enumMap。使用 putAll() 方法,enumMap 将填充第一个 enumMap 的值并打印。

package com.tutorialspoint;

import java.util.EnumMap;

public class EnumMapDemo {
   
   // create an enum
   public enum Numbers{ONE, TWO, THREE, FOUR, FIVE}; 

   public static void main(String[] args) {
      
      EnumMap<Numbers,Student> map = 
         new EnumMap<>(Numbers.class);

      EnumMap<Numbers,Student> map2 = 
         new EnumMap<>(Numbers.class);
		 
      // associate values in map
      map.put(Numbers.ONE, new Student(1, "Julie"));
      map.put(Numbers.TWO, new Student(2, "Robert"));
      map.put(Numbers.THREE,new Student(3, "Adam"));
      map.put(Numbers.FOUR, new Student(4, "Jene"));

      // print the whole map
      System.out.println(map); 

      // copy the map
      map2.putAll(map);

      // print the map2
      System.out.println(map2); 
   }
}
class Student {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

{ONE=[ 1, Julie ], TWO=[ 2, Robert ], THREE=[ 3, Adam ], FOUR=[ 4, Jene ]}
{ONE=[ 1, Julie ], TWO=[ 2, Robert ], THREE=[ 3, Adam ], FOUR=[ 4, Jene ]}
java_util_enummap.htm
广告