在ArrayList中搜索员工编号

时间:2013-01-28 07:20:28

标签: java search arraylist

  

可能重复:
  search in java ArrayList

如果我有ArrayList个员工对象,并且每个对象都包含一个字符串:employeeName和long:employeeNumber

如何根据员工编号搜索员工列表并返回员工对象?

3 个答案:

答案 0 :(得分:3)

这些方面的东西。但最好将对象放在HashMap<Long,Employee>中,其中long是id,而Employee是属于该id的员工。

public Employee getEmployeeById(long empId){
    for(Employee e : employeeList) {
        if(e.getId() == empId){
            return e;
        }
    }
    return null;
}

答案 1 :(得分:1)

我建议使用Map<int,string>,其中int将为您提供员工编号和字符串作为其名称,因此迭代此类集合将非常简单有效

答案 2 :(得分:0)

public class emp {
    int id ;
    String name;
    public emp(int i, String name) 
    {
        super();
        this.id = i;
        this.name = name;
    }
}

///////////

public class Test {
            public static void main(String[] args) 
            {
                int givenEmpId = 3;
                ArrayList<emp> empList = new ArrayList<emp>();
                empList.add(new emp(1,"hussain1"));
                empList.add(new emp(2,"hussain2"));
                empList.add(new emp(3,"hussain3"));
                  for ( emp currEmp : empList)  
                        {  
                            if(currEmp.id==givenEmpId)
                            {
                                System.out.println("emp name is===>>"+currEmp.name);
                            }
                        }
            }
}