Java 打印姓名和薪水
因此,我从一个文件(包括姓名和薪水)中读取数据,并将其插入到一棵树中。在那之后,我正在做一个搜索方法。如果节点存在,它将工作并打印为true。如何仅通过按薪资搜索打印实际姓名和薪资?以下是我的搜索方法:Java 打印姓名和薪水,java,binary-tree,Java,Binary Tree,因此,我从一个文件(包括姓名和薪水)中读取数据,并将其插入到一棵树中。在那之后,我正在做一个搜索方法。如果节点存在,它将工作并打印为true。如何仅通过按薪资搜索打印实际姓名和薪资?以下是我的搜索方法: public boolean find(int salary) { Add current = root; while (current != null) { if (current.getSalary() == salary) {
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));`
如果find()
返回一个节点,请为该节点编写toString()
方法,以便
名称表示为
示例:
@Override
public String toString(){
return this.name + " " + this.salary;
}
为什么这样做:
@Override
public String toString(){
return this.name + " " + this.salary;
}
当
System.out.println()调用节点时,它将自动调用内存地址。如果使用自定义方法重写此调用,则可以定义打印出的变量。请提供足够的代码,例如BinaryTree类BinaryTree类的实例变量是什么?我有两个类。在Add包下初始化二叉树。公共类Add{int salary;String name;Add Left;Add right;我还有Add root,并在二叉树类下添加n。Jeffrey您的方法是正确的,但他仍然需要提供类BinaryTree以供最终决定