В примере используется шаблон try-with-resources, рекомендованный в руководстве по API. Это гарантирует, что поток будет закрыт независимо от обстоятельств.
Вам также необходимо убедиться, что вы закрыли поток! В противном случае вы можете столкнуться с исключением, сообщающим вам, что открыто слишком много файлов. Прочитайте здесь для получения дополнительной информации.
Ответ 4
Во всех ответах по этой теме, в которых используются новые функции Java 8, игнорируется закрытие потока. Пример в принятом ответе должен быть:
Возвращаемый поток инкапсулирует один или несколько DirectoryStreams. Если требуется своевременное удаление ресурсов файловой системы, следует использовать конструкцию try-with-resources, чтобы гарантировать, что метод закрытия потока вызывается после завершения потоковых операций.