打印姓名和工资

时间:2017-04-29 15:46:45

标签: java binary-tree

所以我正在读取一个文件(包含名称和工资)并插入树中。之后,我正在做一个搜索方法。如果节点存在,它正在工作并打印为true。如何通过工资搜索来打印实际名称和工资?这是我的搜索方法:

    public boolean find(int salary) {
    Add current = root;
    while (current != null) {
        if (current.getSalary() == salary) {
            return true;
        } else if (current.getSalary() > salary) {
            current = current.getLeft();

        } else {
            current = current.getRight();
        }

     }
   return false;
}

这是我的主要方法:

public static void main(String[] args) throws IOException {

    BinaryTree bt = new BinaryTree();

    bt.readfile();

    bt.print(bt.root);

    System.out.println();

    System.out.println("Find method: return true if a node exits ,else return flase");

    System.out.println(bt.find(8900));`

1 个答案:

答案 0 :(得分:0)

如果find()返回一个节点,请为该节点写一个toString()方法 姓名表达。

示例:

@Override
public String toString(){

    return this.name + " " + this.salary;

}

为什么会这样:

System.out.println()调用您的节点时,它会自动调用内存地址。如果使用自定义方法覆盖此调用,则可以定义打印出的变量。