LinkedHashMap<String,Object>.clone();

5
以上命令是否会产生 LinkedHashMap 元素的深拷贝?
2个回答

3

在Java中,clone()方法几乎总是浅拷贝。这是由于以下两个原因:

  1. 性能
  2. 并非每个对象都定义了可用的clone()方法,因此深度复制并不总是可行的。

1
除非被覆盖以执行其他操作。 - Steve Kuo

3

LinkedHashMap是从HashMap派生而来的,它在clone()方法中指定:

返回此HashMap实例的浅表副本:键和值本身不会被克隆。

(因此,它是浅克隆而不是深克隆。对于字符串来说这并不重要。)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接