java - 在 Java 中将内容从一个对象复制到另一个对象而无需具有相同的对象引用

标签 java object reference copy

我需要复制两个对象(都是堆栈)。

我想将临时对象的内容复制到当前对象中,然后清除临时对象的内容。

例如,对于一棵树,它会是这样的:

tree = tempTree;
tempTree.clear();

但是,树引用现在指向 temptree,如果我清除 temptree,它也会清除树。我查看了其他帖子,他们谈到了实现可克隆或执行复制构造函数,我确信有更好的方法在 Java 中复制对象。

顺便说一下,我的对象是 Stack 对象。

如何在没有相同对象引用的情况下将内容从对象复制到另一个对象?

最佳答案

不幸的是,您必须自己编写代码。好消息是 StackList 的一种类型,因此您可以轻松地对其进行复制。

Stack stack = ...; //Existing stack
Stack tempStack = new Stack(); 
tempStack.addAll(stack);

现在 tempStack 和 stack 以相同的顺序引用同一组对象,但可以独立改变。

关于java - 在 Java 中将内容从一个对象复制到另一个对象而无需具有相同的对象引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8840040/

相关文章:

matlab - 如何在 MATLAB 中找到注释句柄?

function - 在 Rust 中实际需要 move 到函数的情况

c++ - 存储右值引用 : should this work?

Java 回退模式

java - Hibernate 标准 addOrder 弄乱了结果

javascript - 创建对象的递归列表

python - `type` 真的是一个函数吗?

java - 缓存一致性在无限循环演示中不起作用

java - 如何获取用php发布的小程序数据?

iphone - UIButton 类引用文档中的 addTarget 方法