Tag: 深层复制

深度复制图形结构

我有一个带有Node的图表类,其中每个Node都可以连接到其他节点: public class Node { List connections; } 我想对整个图表进行深度复制。 作为第一次尝试,我尝试制作一个复制构造函数,如: public Node(Node other) { connections = new ArrayList(); for (Node n : other.connections) { connections.add(new Node(n)); } } 如此深入复制图形只会是: public Graph deepCopy () { Graph g = new Graph(); g.nodes = new ArrayList(); for (Node n : nodes) { g.nodes.add(new Node(n)); } } 但这不起作用,因为它破坏了节点之间的连接关系。 我想知道是否有人建议以简单的方式做到这一点? […]

如何深度复制二维数组(不同的行大小)

这是我在这样的社区中的第一个问题,所以我的格式可能不是很好的抱歉。 既然我的问题是我想深入复制Java中的二维数组。 使用固定大小的行和列在1维甚至2维数组中进行操作时非常容易。 我的主要问题是我无法对我尝试复制的第二个数组进行初始化,例如: int[][] copyArray = new int[row][column] 因为行大小不固定并且每行索引中的更改(例如我尝试复制此数组): int[][] envoriment = {{1, 1, 1, 1}, {0, 1, 6}, {1}}; 所以你看,如果我说new int[3][4] ,将会有额外的空间,我不想要。 有没有一种深度复制这种二维数组的方法?

Java HashMap – 深层复制

我只是想找出如何制作HashMap的深层副本的最佳解决方案。 此映射中没有实现Cloneable对象。 我想找到比序列化和反序列化更好的解决方案。