Удаление объекта только из дублированного ArrayList - PullRequest
0 голосов
/ 25 сентября 2011

Я скопировал ArrayList так:

MyList2 = MyList1;

В попытке загрузить объекты MyList2 с теми, которые есть у MyList1.

Теперь, когда я перебираю MyList2, я выполняю it.remove () некоторых объектов, но это вызывает исключение одновременной модификации в другом месте родительской итерации через MyList1. Я думаю, что когда он it.remove () фактически удаляет его из исходного ArrayList, как удалить его только из MyList2? Спасибо.

1 Ответ

3 голосов
/ 25 сентября 2011

Ваша проблема в том, что вы не создали копию ArrayList, есть две ссылки на один и тот же объект.Если вы хотите скопировать список, то вы можете сделать

Collections.copy(MyList2,MyList1);

или

MyList2 = new ArrayList(MyList1);
...