我想通过一个HashSet for (MyClass edg : myHashSet)和里面for,我想删除我的HashSet的元素.
for (MyClass edg : myHashSet)
{
if(....)
myHashSet.remove();
}
Run Code Online (Sandbox Code Playgroud)
但是如果java.util.ConcurrentModificationException在parcour中我如何删除集合中的元素有错误?
您可以使用Iterator,而不是使用修改后的for循环.迭代器有一个remove方法可以删除返回的最后一个元素Iterator.next().
for (final java.util.Iterator<MyClass> itr = myHashSet.iterator(); itr.hasNext();) {
final MyClass current = itr.next();
if(....) {
itr.remove();
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1522 次 |
| 最近记录: |