我不确定以下是否会导致深拷贝或浅拷贝?
public void viewImages(final String[] instancesFilename) {
String[] instances = (String[])instancesFilename.clone();
}
有没有一种简单快速的方法来深度复制字符串数组?
最佳答案
Java 中的字符串是不可变的(不能改变它们的值)。因此,在复制字符串时,深拷贝和浅拷贝之间没有可检测到的差异。
进一步引用:复制会很浅,但这应该不是问题,因为字符串是不可变的。
还有一个有趣的事实:无法使用 clone 方法克隆字符串,因此如果您尝试使用 clone 方法深度复制字符串,您将得到 CloneNotSupportedException。
关于java - 数组上的克隆方法是深拷贝还是浅拷贝?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10125390/