Java 如何显示LinkedBinaryTree
我需要了解显示linkedBinaryTree的最佳方式。右边的noe驱动程序将整数作为元素传递给树的每个节点,对于toString,我尝试了以下代码片段,但它返回的只是javafoundations。ArrayIterator@ca0b6.Java 如何显示LinkedBinaryTree,java,linked-list,binary-tree,tostring,treenode,Java,Linked List,Binary Tree,Tostring,Treenode,我需要了解显示linkedBinaryTree的最佳方式。右边的noe驱动程序将整数作为元素传递给树的每个节点,对于toString,我尝试了以下代码片段,但它返回的只是javafoundations。ArrayIterator@ca0b6. public String toString() { String thing = "BinaryTreeNode: "; if (root.getLeft() != null ) { thing += root.getL
public String toString() {
String thing = "BinaryTreeNode: ";
if (root.getLeft() != null ) {
thing += root.getLeft().toString()+" ";
}
if (root.getRight() != null) {
thing += root.getRight().toString();
}
thing += "}";
return thing;
}您只需重写该方法即可
public String toString()
在您正在使用的节点类中。这样做将把无用的表示替换为更有意义的表示
当然,您需要了解树中哪个是您的数据对象(如果某个节点包含值,我不知道它是否是的值),以便能够调用正确的toString
方法
在任何情况下,当您使用字符串连接运算符时,都不需要显式调用它,例如
“”+root.getLeft()
您能再次说出括号中所说的话吗。这听起来很模糊,因此在node类中没有toString,因此我需要首先重写该方法。toString
是Object
类的一种方法。在括号中,我的意思是,如果你的值是你的节点(例如整数直接进入节点类),你应该有一个toString
,它返回值。如果该值位于节点内部深处(由于结构原因),则必须对内部数据值调用toString
。那么您是说我需要使用toString而不是节点本身调用节点内的元素?我不太明白。