Javaのマップのディープコピーを使用する方法

JavaのMapインターフェースはディープコピーメソッドを提供していませんが、各キーと値を手動でコピーすることで実装できます。以下にサンプルコードを示します。

import java.util.HashMap;
import java.util.Map;

public class DeepCopyMapExample {
    public static void main(String[] args) {
        // 创建原始Map
        Map<String, String> originalMap = new HashMap<>();
        originalMap.put("key1", "value1");
        originalMap.put("key2", "value2");

        // 创建新的Map并进行深拷贝
        Map<String, String> deepCopiedMap = new HashMap<>();
        for (Map.Entry<String, String> entry : originalMap.entrySet()) {
            deepCopiedMap.put(entry.getKey(), entry.getValue());
        }

        // 修改原始Map的值
        originalMap.put("key1", "newValue");

        // 输出结果
        System.out.println("Original Map: " + originalMap);
        System.out.println("Deep Copied Map: " + deepCopiedMap);
    }
}

元々のMapオブジェクトoriginalMapを作成後、各キーと値のペアを手で複製し新しいMapオブジェクトdeepCopiedMapに保存することでディープコピーを実現しました。

ネイティブな日本語で言い換えてください。1つのオプションだけで大丈夫です: 結果:

Original Map: {key1=newValue, key2=value2}
Deep Copied Map: {key1=value1, key2=value2}

元のMapの値は変化しているが、新しいMapオブジェクトの値は変化していないことがわかり、ディープコピーが成功していることがわかる

bannerAds