在Java中,要复制一个HashMap,你可以使用以下几种方法:
方法1:使用putAll()
方法
HashMaporiginalMap = new HashMap<>(); originalMap.put(1, "One"); originalMap.put(2, "Two"); originalMap.put(3, "Three"); HashMap copiedMap = new HashMap<>(originalMap); copiedMap.put(4, "Four"); System.out.println("Original Map: " + originalMap); System.out.println("Copied Map: " + copiedMap);
方法2:使用构造函数
HashMaporiginalMap = new HashMap<>(); originalMap.put(1, "One"); originalMap.put(2, "Two"); originalMap.put(3, "Three"); HashMap copiedMap = new HashMap<>(originalMap); System.out.println("Original Map: " + originalMap); System.out.println("Copied Map: " + copiedMap);
方法3:使用stream()
和collect()
方法(Java 8及更高版本)
import java.util.HashMap; import java.util.Map; public class Main { public static void main(String[] args) { HashMaporiginalMap = new HashMap<>(); originalMap.put(1, "One"); originalMap.put(2, "Two"); originalMap.put(3, "Three"); HashMap copiedMap = originalMap.entrySet().stream() .collect(HashMap::new, (m, e) -> m.put(e.getKey(), e.getValue()), HashMap::putAll); System.out.println("Original Map: " + originalMap); System.out.println("Copied Map: " + copiedMap); } }
以上三种方法都可以实现HashMap的复制。注意,这里我们假设你要复制的是一个新的HashMap,而不是修改原始HashMap。如果你想要修改原始HashMap,可以直接将复制后的HashMap赋值给原始HashMap的变量。