我有以下代码
class BinaryTree{
Node root;
public void inOrderTraverseTree(Node node) {
if (node!= null) {
// Traverse the left node
inOrderTraverseTree(node.leftChild);
// Visit the currently focused on node
System.out.println(node);
// Traverse the right node
inOrderTraverseTree(node.rightChild);
}
}
public void preorderTraverseTree(Node node) {
if (node!= null) {
System.out.println(node);
preorderTraverseTree(node.leftChild);
preorderTraverseTree(node.rightChild);
}
}
public static void main(String[] args) throws SQLException {
BinaryTree theTree = new BinaryTree();
//retrieve data from database, create tree, call functions, everything //works-It shows well at console
theTree.preorderTraverseTree(theTree.root);
theTree.inOrderTraverseTree(theTree.root);
}
和第二类
class Node{
Node leftChild;
Node rightChild;
Node(int id,int search,int left,int right,String name) {
this.left=left;
this.right=right;
this.id = id;
this.search=search;
this.name = name;
}
//get and sett methods
}
这是我的问题。 控制台应用程序正常工作。我从DATABASE使用JDBC获取输入。顺序,预订......显示良好,由纸张验证。 我的问题是: - 我无法从void方法在jTextArea中打印结果。
我试图做的事情:
任何提示?如何打印此方法的结果" theTree.preorderTraverseTree(theTree.root)"进入jTextArea?
编辑:我确实声明了一个String / Object并尝试将方法中的值解析为它,但没有成功。另外,我不知道为什么在void方法中setText方法不起作用。
public void preorderTraverseTree(Node node) {
if (node != null) {
System.out.println(node);
jTextArea1.setText(node.toString());
preorderTraverseTree(node.leftChild);
preorderTraverseTree(node.rightChild);
}
}
//和按钮
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
Node theTree;
theTree.preorderTraverseTree(theTree.root);
}
我的问题:在preorderTraverseTree中,为什么.setTextMethod不起作用。
为什么我需要这个?好吧,我不会把控制台输出放在jTextArea
中