我收到一个错误,我似乎无法修复自己,这可能是一个愚蠢的错误,但我无法看到它。
Map<TemplateBean, Map<String, String>> templateMap = new HashMap<>();
//some code that fills up the map
int biggestSize = 0;
Map<String, String> biggestValues = null;
for (Map.Entry<TemplateBean, Map<String, String>> entry : templateMap.values()) {
Map<String, String> currentValues = entry.getValue();
int currentSize = currentValues.size();
if (currentSize > biggestSize) {
biggestSize = currentSize;
biggestValues = currentValues;
}
}
if (biggestValues != null) {
values = biggestValues;
}
它在for循环中给出了这个错误:
incompatible types
required: Entry<TemplateBean,Map<String,String>>
found: Map<String,String>
但是我很确定我说得对,我不是很想迭代地图或任何东西,但它仍然是星期二早上。
问候。
答案 0 :(得分:3)
更改此行 -
for (Map.Entry<TemplateBean, Map<String, String>> entry:
templateMap.values())
到 -
for (Map.Entry<TemplateBean, Map<String, String>> entry:
templateMap.entrySet())
查看JavaDoc。