-4

我明天要进行期末考试,所以我正在练习一些问题。但是我被这个问题困住了。我得到了一个人类文件和一个完成了一半的 quiz10 文件,我必须填写。quiz10 代码已经完成了一半(给定)。

我需要实现一个函数findPersonWhoseNameStartWith,它返回列表中以 A 开头的人的姓名。但我不知道如何。

想要的输出:

结果:四月,亚当

public class Person{
    private int age;
    private String name;

    public Person(String name,int age){
        this.name=name;
        this.age=age;
    }

    public int getAge(){
        return age;
    }

    public String getName(){
        return name;
    }

    public String toString(){
        return "" + name;
    }
}

给定代码的一半(我已经指出我尝试了哪一部分):

import java.util.*;

public class Quiz10{
    public static void main(String[] args){
    ArrayList<Person>list=new ArrayList<Person>();
    list.add(new Person("April",9));
    list.add(new Person("Adam",3));
    list.add(new Person("bil",9));
    list.add(new Person("cpril",9));
    list.add(new Person("dpril",9));

    ArrayList<Person>result=findPersonWhoseNameStartWith(list,"A");
    System.out.println("result:");


//START DOING FROM HERE

    for(int i=0;i<list.size();i++){
        Person p=list.get(i);

        if(p.findPersonWhoseNameStartWith("A");
    }

}
4

3 回答 3

1

你在正确的轨道上。你是对的,你必须遍历列表。现在,如果每个条目以 . 开头,则输出它'A'。它非常简单,并且单个 if 语句比您想象的要容易。

于 2013-04-24T07:48:03.383 回答
0
// pass your personList and the prefix, return a list of person starting with the prefix you specified
private List<Person> findPersonWhoseNameStartWith(List<Person> personList, String prefix) {
      // create a list to store your result
      List<Person> matchedList = new ArrayList<Person>();

      // TODO iterate personList
      // add them to the matchedList if the prefix matches

      return matchedList;
}
于 2013-04-24T08:09:18.400 回答
0
public List<Person> findAPersonWhoStartsWith(List<Person> persons, String aLetter){
    List<String> personsNames = new ArrayList<String>();

    if(persons!=null && aLetter!=null && !aLetter.isEmpty()){
        for(Person aPerson:persons){
            if(aPerson.getName().startsWith(aLetter)){
                personsNames.add(aPerson);
            }
        }
    }
    return personsNames;
}
于 2013-04-24T08:09:56.137 回答