如何在Java中复制或克隆LinkedList实现的队列?
我有一个 q1,它实现为 ,我想定义一个 q2,它是 q1 的一个单独但完全相同的实例。Queue
LinkedList
Queue
Queue
我该怎么做,因为没有实现?Queue
Cloneable
我有一个 q1,它实现为 ,我想定义一个 q2,它是 q1 的一个单独但完全相同的实例。Queue
LinkedList
Queue
Queue
我该怎么做,因为没有实现?Queue
Cloneable
在一个衬垫中:
new LinkedList<>(myQueue);
因为 和 集合有一个构造函数需要另一个构造函数,所以这是做浅克隆的快速方法。Queue extends Collection
Collection
如果您愿意,可以用您自己的实现替换。LinkedList
Queue
另外,请阅读javadocs。他们有所有的答案。
你可以使用迭代器:
Iterator<Integer> it = q1.iterator();
while(it.hasNext()) {
q2.add(it.next());
}