0

linkedBinaryTree を表示する最良の方法を理解する必要があります。ドライバーは、ツリーの各ノードに要素として整数を渡しています。toString については、次のコード スニペットを試しましたが、返されるのは、たとえば javafoundations.ArrayIterator@ca0b6 だけです。

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;

}

4

1 に答える 1

0

メソッドをオーバーライドするだけです

public String toString()

使用しているノードクラスで。そうすることで無駄な表現がより意味のある表現に置き換わります。

もちろん、正しいtoStringメソッドを呼び出すことができるように、ツリー内のデータオブジェクトがどれであるかを理解する必要があります(ノードが値であるかどうか、または値が含まれているかどうかはわかりません)。

いずれにせよ、文字列連結演算子を使用しているときはいつでも明示的に呼び出す必要はありません。"" + root.getLeft()

于 2012-04-18T03:49:11.130 に答える