我有一个二叉搜索树,其中包含一个带字符串和int的对象:
public Person() {
name = "";
age = 0;
}
public Person(String n, int a) {
name = n;
age = a;
}
我将所有Person对象添加到我的树中,但我不确定如何获取名称字符串?我只知道如何获取整个对象,因为我提供了一个特定的对象来搜索,但我希望能够搜索给定的名称。我只是在寻找如何获取字符串名称,而不是搜索的实现。
答案 0 :(得分:0)
为属性名称设置公共getter 方法。
public class Person {
private String name;
private int age;
//your cons
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
}
当你从树上得到一个人物时。你可以在它的实例上调用getter方法。
Person p1 = getThePersonFromtheTree;
System.out.println(p1.getName());
当然,你只需要继续迭代你的树,直到你找到一个具有特定名称的对象。例如,如果您想找到名为 krishna 的人物对象。是否可以遍历树直到找到该名称?
for(int i=0; i<personsTree.size(); i++){
if(personsTree.getTheObj(i).getName().equals("Krishna")){
//found the object with name krishna
}
}