迭代并从地图中删除
我在做:
for (Object key : map.keySet()) if (something) map.remove(key);
它引发了一个ConcurrentModificationException,所以我将其更改为:
for (Object key : new ArrayList<Object>(map.keySet())) if (something) map.remove(key);
这个,以及修改地图的任何其他过程都在同步块中。
有更好的解决方案吗?
如果没有人想出一个更好的解决方案,首先要说没有得到勾号;)
元芳怎么了
慕斯709654
临摹微笑
相关分类