Java WeakHashMap putall()方法
java.util.WeakHashMap.putAll()是WeakHashMap类的一个内置方法,用来进行复制操作。该方法将所有的元素,即映射,从一个地图复制到另一个地图。
语法
new_weakhash_map.putAll(exist_weakhash_map)
参数: 该方法需要一个参数existence_weakhash_map,指的是我们要复制的现有地图。
返回值: 该方法不返回任何值。
异常: 如果我们要复制的地图是空的,该方法会抛出NullPointerException。
下面的程序说明了java.util.WeakHashMap.putAll()方法的工作:
程序1: 将字符串值映射到整数键。
// Java code to illustrate the putAll() method
import java.util.*;
public class Weak_Hash_Map_Demo {
public static void main(String[] args)
{
// Creating an empty WeakHashMap
Map<Integer, String> weak_hash = new
WeakHashMap<Integer, String>();
// Mapping string values to int keys
weak_hash.put(10, "Geeks");
weak_hash.put(15, "4");
weak_hash.put(20, "Geeks");
weak_hash.put(25, "Welcomes");
weak_hash.put(30, "You");
// Displaying the WeakHashMap
System.out.println("Initial Mappings are: " +
weak_hash);
// Creating a new weakhash map and copying
Map<Integer, String> new_weakhash_map = new
WeakHashMap<Integer, String>();
new_weakhash_map.putAll(weak_hash);
// Displaying the final WeakHashMap
System.out.println("The new map: " +
new_weakhash_map);
}
}
输出:
Initial Mappings are: {30=You, 15=4, 10=Geeks, 25=Welcomes, 20=Geeks}
The new map: {15=4, 30=You, 10=Geeks, 25=Welcomes, 20=Geeks}
程序2: 将整数值映射到字符串键。
// Java code to illustrate the putAll() method
import java.util.*;
public class WeakHash_Map_Demo {
public static void main(String[] args)
{
// Creating an empty WeakHashMap
Map<String, Integer> weak_hash = new
WeakHashMap<String, Integer>();
// Mapping int values to string keys
weak_hash.put("Geeks", 10);
weak_hash.put("4", 15);
weak_hash.put("Geeks", 20);
weak_hash.put("Welcomes", 25);
weak_hash.put("You", 30);
// Displaying the WeakHashMap
System.out.println("Initial Mappings are: " +
weak_hash);
// Creating a new weakhash map and copying
Map<String, Integer> new_weakhash_map = new
WeakHashMap<String, Integer>();
new_weakhash_map.putAll(weak_hash);
// Displaying the final WeakHashMap
System.out.println("The new map: " +
new_weakhash_map);
}
}
输出:
Initial Mappings are: {Welcomes=25, 4=15, You=30, Geeks=20}
The new map: {Welcomes=25, 4=15, You=30, Geeks=20}
注意: 同样的操作可以通过不同数据类型的变化和组合对任何类型的Mapping进行操作。