Java 当您知道姓名时,如何在列表数组中查找电话号码?

Java 当您知道姓名时,如何在列表数组中查找电话号码?,java,Java,我需要写一个代码,当给定一个名字时,从数组列表中找到一个电话号码。以下是我目前拥有的: public class Person { private String name; private String number; public Person(String name, String number) { this.name = name; this.number = number; } public String g

我需要写一个代码,当给定一个名字时,从数组列表中找到一个电话号码。以下是我目前拥有的:

public class Person {

    private String name;
    private String number;

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

    public String getName() {
        return this.name;
    }    

    public String getNumber() {
        return this.number;
    }


    public String toString() {
        return "" + getName()+ "  number: " + getNumber();
    }    
}
下面是电话号码列表的课程:

import java.util.ArrayList;

public class Numbers {
    private ArrayList<Person> memo;

    public Numbers() {
        this.memo = new ArrayList<>();
    }

    public void addnew(String name, String number) {
        Person newperson = new Person (name, number);
        this.memo.add(newperson);      
    }
}
import java.util.ArrayList;
公共课号{
私人ArrayList备忘录;
公众号码(){
this.memo=new ArrayList();
}
public void addnew(字符串名称、字符串编号){
Person newperson=新人员(姓名、编号);
此.memo.add(newperson);
}
}
使用此方法

public String FindNumber(String UserName){
   for(Person p : [ArrayList<Person>]) {
      if (UserName.equals( p.getName())){
         return p.getNumber();
      }
   }
   return "NaN";
}

您应该从for循环开始。你有两门课。。。您尝试的搜索代码在哪里?可能重复如果我给您一张纸,上面有姓名和电话号码的列表,您如何找到特定姓名的号码?考虑一下手动解决此问题需要采取的步骤,然后用文字描述这些步骤。请不要对字符串使用==它称为构造函数,而不是生成器。要使答案真正有用,您可以解释一下,这样OP就不会盲目地复制粘贴他不懂的代码。Java命名约定说方法应该是动词,大小写混合,第一个字母小写,每个内部单词的第一个字母大写。
public Numbers() {
    this.memo = new ArrayList<Person>();
}
public String FindNumber(String UserName){
   for(Person p : this.memo ) {
      if (UserName.equals( p.getName())){
         return p.getNumber();
      }
   }
   return "NaN";
}