Tag: 副本

克隆GregorianCalendar的最快方法?

我正在尝试制作一个对象的深层副本,包括GregorianCalendar实例。 我总是担心使用clone()并且它似乎没有在这里被覆盖,所以我只是按字段进行复制。 理想情况下,有一个复制构造函数,我可以这样使用: GregorianCalendar newCalendar = new GregorianCalendar(oldCalendar); 不幸的是我在API中找不到任何这样的function,并且试图弄清楚我需要哪些字段来获得精确的副本。 那么,要复制其中一个日历,你会怎么做? 我在这里错过了一些简单的捷径吗?

如何在Java中复制HashMap(不是浅拷贝)

我需要复制HashMap<Integer, List >但是当我在副本中更改某些内容时,我希望原始内容保持不变。 即,当我从副本中删除List中的某些内容时,它将保留在原始List中的List中。 如果我理解正确,这两个方法只会创建浅层副本,这不是我想要的: mapCopy = new HashMap(originalMap); mapCopy = (HashMap) originalMap.clone(); 我对吗? 有没有比这更好的方法来迭代所有键和所有列表项并手动复制它?

用Java复制对象

我有一个需要用Java复制的对象。 我需要创建一个副本并在其上运行一些测试而不更改原始对象本身。 我假设我需要使用clone()方法,但这是受保护的。 在网上做了一些研究之后,我可以看到这可以用我class上的公共方法覆盖。 但我找不到如何做到这一点的解释。 怎么可以这样做? 此外,这是实现我需要的最佳方式吗?

用Java复制文件并替换现有目标

我正在尝试使用java.nio.file.Files复制文件,如下所示: Files.copy(cfgFilePath, strTarget, StandardCopyOption.REPLACE_EXISTING); 问题是Eclipse说“文件类型中的方法副本(Path,Path,CopyOption …)不适用于参数(File,String,StandardCopyOption)” 我在Win7 x64上使用Eclipse和Java 7。 我的项目设置为使用Java 1.6兼容性。 有没有解决方案,或者我必须创建这样的解决方法: File temp = new File(target); if(temp.exists()) temp.delete(); 谢谢。

如何用Java复制堆栈?

我有一个堆栈A,我想创建一个与堆栈A相同的堆栈B.我不希望堆栈B只是一个指向A的指针 – 我实际上想要创建一个包含相同元素的新堆栈B堆栈A的顺序与堆栈A的顺序相同。堆栈A是一堆字符串。 谢谢!