在Java中,可以通過以下方式拷貝一個Map并修改其值:
使用構造函數創建一個新的Map對象,并傳入原始Map對象作為參數。
Map<String, Integer> originalMap = new HashMap<>();
// 添加鍵值對到原始Map對象
Map<String, Integer> copiedMap = new HashMap<>(originalMap);
// 修改copiedMap對象的值
copiedMap.put("key", newValue);
使用putAll()
方法將原始Map對象的所有鍵值對添加到新的Map對象中。
Map<String, Integer> originalMap = new HashMap<>();
// 添加鍵值對到原始Map對象
Map<String, Integer> copiedMap = new HashMap<>();
copiedMap.putAll(originalMap);
// 修改copiedMap對象的值
copiedMap.put("key", newValue);
使用Java 8中的stream()
和collect()
方法。
Map<String, Integer> originalMap = new HashMap<>();
// 添加鍵值對到原始Map對象
Map<String, Integer> copiedMap = originalMap.entrySet().stream()
.collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
// 修改copiedMap對象的值
copiedMap.put("key", newValue);
無論選擇哪種方式,都可以創建一個新的Map對象,并修改其值,而不會影響原始的Map對象。