Обработка List<> через Stream API

186
13 февраля 2021, 12:10

Имеется класс, в котором есть поле Path directory; и метод, который возвращает список объектов - List getAllStorted.

Задача - реализовать этот метод, используя Files.list(directory). Указанный метод возвращает Stream, а необходимо привести к List . Пока что после всех просмотров про Stream'ы ничего не понял. Прошу помощи; если не трудно - не только кусочком кода, но и небольшим пояснением

protected List<Resume> getAllStorage() {
    try {
        return Files.list(directory).collect(Collectors.toList());
    } catch (IOException e) {
        throw new StorageException("Storage reading Error", null);
    }
}

В классе Resume - два поля String, геттеры/сеттеры/etc.

Дальше идет класс AbstractStorage, от которого наследуются различные классы с описанием типа хранения объектов класса Resume. Один из них - класс AbstractPathStorage, который реализует хранение объектов в виде файлов, в данном случае:

@Override 
protected void saveToStorage(Resume resume, Path path) { 
try { 
Files.createFile(path); 
} catch (IOException e) {
 throw new StorageException("Path creation Error", null);

}

Answer 1
List<Path> files = Files.list(directory).collect(Collectors.toList());
READ ALSO
Потокобезопасный ArrayList

Потокобезопасный ArrayList

Пишу свою реализацию потокобезопасного эррэй листа на CAS-блокировках (не спрашивайте зачем)Столкнулся с некоторым непонятным мне поведением...

136
Несколько яндекс карт в цикле с кнопками. Не работают кнопки

Несколько яндекс карт в цикле с кнопками. Не работают кнопки

Есть такая проблемкаВыводится какое-то кол-во яндекс карт, сейчас 3, в цикле

99
Как сравнить разницу между текущей и будущей датой с точностью до месяца?

Как сравнить разницу между текущей и будущей датой с точностью до месяца?

Есть задачка, в которой необходимо сравнить текущую дату с заданной в будущем с точностью до месяца включительно и определить разницу в количестве...

117
Ошибка CORS при работе с API

Ошибка CORS при работе с API

У Pinboard есть APIКогда я хочу обратится к нему из браузера мне выдает ошибку CORS

121