作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我将如何遍历嵌套的 HashMap?
HashMap
是这样设置的:
HashMap<String, HashMap<String, Student>>
其中 Student
是一个包含变量 name
的对象。例如,如果我的 HashMap 看起来像这样(以下不是我的代码,它只是模拟 hashmap 的内容可能是什么)
hm => HashMap<'S', Hashmap<'Sam', SamStudent>>
HashMap<'S', Hashmap<'Seb', SebStudent>>
HashMap<'T', Hashmap<'Thomas', ThomasStudent>>
我如何遍历所有单个字母键,然后遍历每个全名键,然后提取学生的姓名?
最佳答案
for (Map.Entry<String, HashMap<String, Student>> letterEntry : students.entrySet()) {
String letter = letterEntry.getKey();
// ...
for (Map.Entry<String, Student> nameEntry : letterEntry.getValue().entrySet()) {
String name = nameEntry.getKey();
Student student = nameEntry.getValue();
// ...
}
}
...Java 10 中的 var
关键字可以消除泛型的冗长:
for (var letterEntry : students.entrySet()) {
String letter = letterEntry.getKey();
// ...
for (var nameEntry : letterEntry.getValue().entrySet()) {
String name = nameEntry.getKey();
Student student = nameEntry.getValue();
// ...
}
}
关于java - 遍历嵌套的 hashmap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26188532/
我是一名优秀的程序员,十分优秀!