Вместо этого используйте FileFilter
, так как он даст вам доступ к фактическому файлу, затем включите проверку для File#isFile
File testDirectory = new File("C://rootDir//");
File[] files = testDirectory.listFiles(new FileFilter() {
@Override
public boolean accept(File pathname) {
String name = pathname.getName().toLowerCase();
return name.endsWith(".xml") && pathname.isFile();
}
});
Если вы попытаетесь сначала запустить функцию, вы увидите, что цикл внутри функции теперь занимает больше времени.
Это связано с тем, как работает механизм V8, который компилирует JavaScript, а не только с кодом.
Под покровами сделано много оптимизации, чтобы сделать код javascript быстрее. Одним из них является оптимизирующий компилятор .
Это изображение может помочь вам понять, как работает рекомпилятор:
Изображение из видео: https: // www. youtube.com/watch?v=p-iiEDtpy6I&t