Я новичок в Java и у меня проблема с одной задачей.
Я пытаюсь добавить элемент в ArrayList, но есть исключение: Исключение в потоке "main" java.util.ConcurrentModificationException
public Anagrams (String path) throws FileNotFoundException {
List<String> tmpList = new ArrayList<>();
Scanner scan = new Scanner(new File(path));
while(scan.hasNext()) {
tmpList.add(scan.next());
}
scan.close();
tmpList.forEach(word -> {
if(anList.isEmpty()) {
ArrayList<String> tmp1 = new ArrayList<String>();
tmp1.add(word);
anList.add(tmp1);
}
else {
anList.forEach(list -> {
if (isAnagram(word, list.get(0))) {
list.add(word);
} else {
ArrayList<String> tmp2 = new ArrayList<String>();
tmp2.add(word);
anList.add(tmp2);
}
});
}
});
}
Я собираю слова из текстового файла и разделяю их на разные массивы, если они анаграммы или нет. Я знаю, что не могу изменить коллекцию, пока перебираю ее, но не могу понять, как избежать этого исключения ... Пожалуйста, вы можете мне помочь?