0

我创建了一个结构/类的向量。它包含类成员 firstName lastName 和 Age。

class Person
{
     String firstName;
     String lastName;
     int Age;
}

class Vote
{
     Vector<Person> vec;
     public Vote(){
         vec =  new Vector<Person>();
     }    
     public void addElem(Person p)
     {
         v.addElement(p);
     }

}

我正在尝试通过以下任何一个来搜索向量:

firstName,lastName,age.

搜索后,结果应该是该索引处的整个向量元素。我试图这样做,vec.firstName.contains()但这不起作用。有没有办法可以搜索向量?

4

2 回答 2

5

最简单的做法是遍历向量的元素并依次比较每个元素。

public Person searchByFirstName(Vote v, String firstName) {
  for (Person p : v.vec) {
    if (p.firstName.equals(firstName)) {
      return p;
    }
  }
  return null;
}

您可以对要搜索的每种类型的事物执行相同的操作。显然这个例子是完全匹配的;您可以通过查看 String 类提供的方法来实现不区分大小写的匹配或前缀匹配。

于 2013-09-28T05:05:37.790 回答
0

创建一个person对象并使用:
vec.contains(personObj)
而不是
vec.firstName.contains()

于 2013-09-28T05:06:26.213 回答