我必须创建一个表达式树。这是它的一个示例模型。但它显示了我奇怪的字符,但不是我的字符串。 你能帮我解决这个问题吗?还有一个问题:你能告诉我简化我的代码的方法吗?这部分代码呢?我可以没有它吗?Java中的二叉树。 System.out.println问题()
public Iterator<TreeNode<T>> iterator() {
return null;
}
import java.util.*;
public class TreeNode<T> implements Iterable<TreeNode<T>> {
T data;
TreeNode<T> parent;
List<TreeNode<T>> children;
public TreeNode(T data) {
this.data = data;
this.children = new LinkedList<TreeNode<T>>();
}
public TreeNode<T> addChild(T child) {
TreeNode<T> childNode = new TreeNode<T>(child);
childNode.parent = this;
this.children.add(childNode);
return childNode;
}
public Iterator<TreeNode<T>> iterator() {
return null;
}
public static void main(String[] args){
TreeNode<String> root = new TreeNode<String>("root");
System.out.println(" " + root + " ");
System.out.println(" / \\ ");
TreeNode<String> node1 = root.addChild("node1");
TreeNode<String> node2 = root.addChild("node2");
System.out.println(" " + node1 + " " + node2);
System.out.println(" \\");
TreeNode<String> node20 = node2.addChild(null);
System.out.println(" " + node20);
System.out.println(" /\\");
TreeNode<String> node21 = node2.addChild("node21");
TreeNode<String> node210 = node20.addChild("node210");
System.out.println(" " + node21 + " " + node210);
}
}