【发布时间】:2015-12-30 21:00:02
【问题描述】:
我正在尝试遍历地图并删除某些元素以构建受控词汇表。这是我的代码:
public static Map<String, Integer> controlVocab(Map<String, Integer> docf){
Set<String> set = docf.keySet();
Iterator<String> itr = set.iterator();
for (Map.Entry <String, Integer> entry : docf.entrySet())
{
if(entry.getValue()<50){
docf.remove(entry.getKey());
}
}
return docf;
}
但我不断收到此错误: 线程“主”java.util.ConcurrentModificationException 中的异常 在 java.util.HashMap$HashIterator.nextNode(HashMap.java:1429) 在 java.util.HashMap$EntryIterator.next(HashMap.java:1463) 在 java.util.HashMap$EntryIterator.next(HashMap.java:1461) 在 org.tartarus.snowball.TestApp.controlVocab(TestApp.java:114) 在 org.tartarus.snowball.TestApp.main(TestApp.java:619)
这有意义吗?
【问题讨论】: