1. java.util.ConcurrentModificationException
错误信息: at java.util.LinkedHashMap$LinkedHashIterator.nextNode(LinkedHashMap.java:719)
at java.util.LinkedHashMap$LinkedKeyIterator.next(LinkedHashMap.java:742)
并发修改异常:错误原因当使用迭代器时在遍历过程中进行了修改集合的内容;
解决方法:
Set<String> resultset = resultmap.keySet();
List <String> list = new ArrayList<String>(resultset);
for (int i = 0; i < list.size(); i++) {
if (list.get(i).contains("a")) {
String str = list.get(i);
//进行修改操作
resultmap.put(list.get(i).replaceAll("a", "1"),
resultmap.get(list.get(i)));
//进行删除操作
resultmap.remove(str);
}
}
思路:没有使用遍历方法因为会报错,使用keyset()方法获取到map的k的集合,然后使用list进行转成一个新的list,根据list的内容进行map的操作。