遍历TreeMap - 返回地图键的所有值的集合

时间:2013-04-09 02:27:49

标签: java collections maps set

我有一个数据库,用于将课程名称映射到学生ID号。我需要遍历地图来创建另一个包含数据库中所有学生的集合。这是我到目前为止的代码。任何帮助将不胜感激!!

//返回学校所有学生的一套

public Set<Integer> allStudents() {
   Set<Map.Entry<String,Set<Integer>>> entries = database.entrySet();
   Set<Integer> students = new TreeSet<Integer>();

   for (Map.Entry<String,Set<Integer>> pair: entries){ 
       students.add();
    }

    return students;

} // end allStudents

2 个答案:

答案 0 :(得分:1)

你可以这样做:

for (Map.Entry<String, Set<Integer>> pair : entries) {
   students.addAll(pair.getValue());
}

答案 1 :(得分:0)

您的代码是正确的。这是一个没有迭代的版本

public Set<Integer> allStudents() {
    return new HashSet<Integer>(database.values());
}