Я пытаюсь использовать итератор, но это дает мне эту ошибку:Использование класса итератора в Java
java.util.concurrentModificationException: null (in java.util.ArrayList$Itr)
Код находится здесь:
import java.util.ArrayList;
import java.util.Iterator;
public class Iteratorr
{
ArrayList<String> list = new ArrayList<>();
Iterator<String> it = list.iterator();
void add()
{
list.add("Hello");
list.add("I");
list.add("am");
list.add("ArrayList");
}
void print()
{
while(it.hasNext())
{
String str = it.next();
System.out.println(str);
}
}
}
Может кто-нибудь объяснить причину?
потому что вы создаете итератор в init, и после этого обязательно вызывается 'add'. следовательно, одновременная модификация – njzk2