20
ArrayListから要素を反復して削除するときにjava.util.ConcurrentModificationExceptionを回避する方法
繰り返し処理したいArrayListがあります。それを繰り返しながら、同時に要素を削除する必要があります。明らかにこれはをスローしjava.util.ConcurrentModificationExceptionます。 この問題を処理するためのベストプラクティスは何ですか?最初にリストを複製する必要がありますか? ループ自体ではなく、コードの別の部分の要素を削除します。 私のコードは次のようになります: public class Test() { private ArrayList<A> abc = new ArrayList<A>(); public void doStuff() { for (A a : abc) a.doSomething(); } public void removeA(A a) { abc.remove(a); } } a.doSomething呼び出すかもしれませんTest.removeA()。