Java - 获取列表中的列表

时间:2016-06-14 15:17:32

标签: java arraylist collections

我有一份学生名单,每个学生都可以有多个地址。 我想要一份学生名单,并为每个学生输入,拥有该学生的所有地址。

我想创建一个hashmap,其中学生ID为关键,学生详细信息为值。但我不确定如何在此实现中获得地址列表。

List<Student> students;
Map<Integer,List<Student>> studentmap = new HashMap<Integer,List<Student>>();
for(Student s: students){
    if(!studentmap.contains(s.getId)){
        List<Student> studentsList=new ArrayList<Student>();
        studentsList.add(s);
        studentmap.put(s.getId,studentsList);
    }
}

2 个答案:

答案 0 :(得分:0)

如果您有学生名单,那么您可以根据给出的ID获取他们的地址,前提是您的学生班级的结构类似于下面的代码。

  

但我不知道如何在这里有一个地址列表   实施

将它们放在Student课程中:

class Student
{
    private String studentAddresses[];
    private int id;

    public Student(int studentId,String addresses[]){
        this.studentAddresses = addresses;
        this.id = studentId;
    }

    public String[] getStudentAddressess(){
        return this.studentAddresses;
    }
}

答案 1 :(得分:0)

让学生名单(List studentList)。 在学生班中,我已经列出了地址和ID。 从StudentList您可以获得学生信息和地址列表

List<Student> studentList;    
class Student {
private int id;
private List<String> addressList = new ArrayList<String>();

public Student(int id, List<String> addressList) {
    this.id = id;
    this.addressList = addressList;
}

public List<String> getAddressList() {
    return addressList;
}

public int getId() {
    return id;
}

public void setId(int id) {
    this.id = id;
}

public void setAddressList(List<String> addressList) {
    this.addressList = addressList;
}

}