Помогите пожалуйста найти ошибку
Компиляция выдает ошибку:
Exception in thread "main" java.util.ConcurrentModificationException
at java.util.ArrayDeque$DeqIterator.next(ArrayDeque.java:648)
at com.javarush.task.task31.task3102.Solution.getFileTree(Solution.java:19)
at com.javarush.task.task31.task3102.Solution.main(Solution.java:34)
package com.javarush.task.task31.task3102;
import java.io.File;
import java.io.IOException;
import java.nio.file.*;
import java.nio.file.attribute.BasicFileAttributes;
import java.util.*;
/*
Находим все файлы
*/
public class Solution {
public static List<String> getFileTree(String root) throws IOException {
List<String> list = new ArrayList<>();
File mainRoot = new File("E:\\Miroslav\\Work\\Test");
Queue<File> queue = new ArrayDeque<>();
Collections.addAll(queue, Objects.requireNonNull(mainRoot.listFiles()));
for (File f : queue){
if (f.isFile()){
list.add(f.getAbsolutePath());
}
else if (f.isDirectory()){
Collections.addAll(queue, Objects.requireNonNull(f.listFiles()));
}
queue.poll();
}
return list;
}
public static void main(String[] args) {
}
}