如何在Android中处理ConcurrentModificationException

前端之家收集整理的这篇文章主要介绍了如何在Android中处理ConcurrentModificationException前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图从ArrayList中删除项目.有时它会弹出一个异常,“ java.util.ConcurrentModificationException”.

首先我尝试通过array_list_name.remove(i)删除它们,但它失败了,有些人被要求使用Iterator.所以我目前的代码如下.

for (Iterator<Collectable> iter = array_list_name.iterator(); iter.hasNext();) {
   Collectable s = iter.next();
   if (s.equals(array_list_name.get(id))){
       iter.remove();
       return true;
   }
}

我在视图中的onDraw()函数调用“array_list_name”.我的观点是SurfaceView.任何人都可以建议我如何从ArrayList中删除项目而不会收到此错误.

解决方法

尝试使用java.util.concurrent.CopyOnWriteArrayList而不是ArrayList
原文链接:https://www.f2er.com/android/316696.html

猜你在找的Android相关文章