温馨提示×

java currenthashmap如何进行复制

小樊
82
2024-12-03 14:03:20
栏目: 编程语言

在Java中,要复制一个HashMap,你可以使用以下几种方法:

方法1:使用putAll()方法

HashMap<Integer, String> originalMap = new HashMap<>();
originalMap.put(1, "One");
originalMap.put(2, "Two");
originalMap.put(3, "Three");

HashMap<Integer, String> copiedMap = new HashMap<>(originalMap);
copiedMap.put(4, "Four");

System.out.println("Original Map: " + originalMap);
System.out.println("Copied Map: " + copiedMap);

方法2:使用构造函数

HashMap<Integer, String> originalMap = new HashMap<>();
originalMap.put(1, "One");
originalMap.put(2, "Two");
originalMap.put(3, "Three");

HashMap<Integer, String> 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) {
        HashMap<Integer, String> originalMap = new HashMap<>();
        originalMap.put(1, "One");
        originalMap.put(2, "Two");
        originalMap.put(3, "Three");

        HashMap<Integer, String> 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的变量。

0