我有一个叫做Person的类。它具有以下attributes;它具有2个属性IDTelephone。 1个人可以拥有许多电话,因此您可能会在下面看到具有多个ID的人。

public ArrayList<Person> all(){

    p = new ArrayList<Person>();
    p.add(new Person(1,266763));
    p.add(new Person(1, 358643));
    p.add(new Person(2, 4667763));

    return p;
}

还有另一个类叫做PersonDB。它将有一个名为findPersonWithTheTelephoneNumber(int telephone)的方法。
public void findPersonWithTheTelephoneNumber(int telephone) {
   Person pp = new Person();
   ArrayList<Person> personList = pp.all();

   // Now i want to find the Person object that will match the telephone number of these list of personList.


}

personList,具有3-4个Person对象。我需要搜索PersonArrayList并找到与Person对象匹配的对象。我怎样才能做到这一点?

注意:我尝试了personList.contains()。但这是行不通的。

最佳答案

我尝试了personList.contains()

确保为Person类覆盖Object.equals()Object.hashCode()。但是您必须在假定电话号码唯一的情况下对电话号码进行平等检查。这不是解决方案,而是解决方法。使用贝鲁姆的答案。将其标记为正确答案。

07-26 09:30