我有一个树实现,其中TreeNode
包含Tree myTree
的字段parent(this)
,以检查treeNode
是否属于父级。
当我删除一个节点(级联方式)时,我将treeNode及其所有子节点的值更改为null
以避免使用不当(效率有点但需要)。
现在的问题是: 当要更改的treeNode是根时,更新“重新创建”树(将内存值更改为新的,更改指针或类似内容)以获取“this”的新值,而不是更改每个treeNodes值为空。
类似的东西:
this = new Tree<E>();
所有在类树中;
另一个问题是我无法将值返回到外部变量,因为remove()
已经返回了被淘汰的treeNode的值。
答案 0 :(得分:0)
Java使用按值调用。因此,您无法将对象内的引用更改为将影响调用方的新引用。
任何其他对象都没有使用完全相同的引用。