Java EnumMap putAll()
Java EnumMap类的
putAll()方法用于将所有映射从一个EnumMap复制到新的EnumMap。
语法
public void putAll(Map<? extends K,? extends V> m)
参数
m -要复制到较新版本的地图。
返回
此方法不返回任何值。
异常
NullPointerException -如果给定的映射为null,或者给定映射中的一个或多个键为null。
示例1
import java.util.*;
public class EnumMapPutAllExample1 {
// create an enum
public enum Days {
Monday,Tuesday, Wednesday, Thursday
}
;
public static void main(String[] args) {
EnumMap<Days, String> map1 = new EnumMap<Days, String>(Days.class);
EnumMap<Days, String> map2 = new EnumMap<Days, String>(Days.class);
map1.put(Days.Monday, "1");
map1.put(Days.Tuesday, "2");
map1.put(Days.Wednesday, "3");
System.out.println("Map1: "+map1);
System.out.println("Map2: "+map2);
map2.putAll(map1);
System.out.println("Map1: "+map1);
System.out.println("Map2: "+map2);
}
}
输出:
Map1: {Monday=1, Tuesday=2, Wednesday=3}
Map2: {}
Map1: {Monday=1, Tuesday=2, Wednesday=3}
Map2: {Monday=1, Tuesday=2, Wednesday=3}
示例2
import java.util.*;
public class EnumMapPutAllExample2 {
// create an enum
public enum Tutorial {
Java, CSS, Python, Android, Javascript
}
;
public static void main(String[] args) {
EnumMap<
Tutorial, String>
map1 =
new EnumMap<
Tutorial, String>
(Tutorial.class);
EnumMap<
Tutorial, String>
map2 =
new EnumMap<
Tutorial, String>
(Tutorial.class);
map1.put(Tutorial.Java, "1");
map1.put(Tutorial.CSS, "2");
map1.put(Tutorial.Python, "3");
map1.put(Tutorial.Android, "4");
// print map1 and map2
System.out.println("Map1: "+map1);
System.out.println("Map2: "+map2);
map2.putAll(map1);
//print map1 and map2 again
System.out.println("Map1: "+map1);
System.out.println("Map2: "+map2);
}
}
输出:
Map1: {Java=1, CSS=2, Python=3, Android=4}
Map2: {}
Map1: {Java=1, CSS=2, Python=3, Android=4}
Map2: {Java=1, CSS=2, Python=3, Android=4}