Сломал всю башку, помогите - светлые головы
@Test
void findBooksByAuthorNameTest() {
Page<Book> response = mainController.findBooksByAuthorName("рэй", PageRequest.of(0, 20));
Assert.assertNotNull(response);
List<Author> authors = new ArrayList<>();
List<Book> books = response.stream().collect(Collectors.toList());
books.stream().filter(book -> book.getAuthors().addAll(authors));
System.out.println(authors.size());
}
У меня есть коллекция в коллекции как мне правильно ее достать и положить в коллекцию своего типа, пытаюсь добавить методом addAll но размер коллекции authors все равно 0. По-любому ошибка элементарная, но я уже всю голову сломал
Ответы (1 шт):
Автор решения: Дмитрий
→ Ссылка
Реализовать так(разумеется, в классе book должен быть геттер getAuthors(), который возвращает коллекцию типа Author):
List<Author> authors = books.stream()
.flatMap(book -> book.getAuthors().stream())
.collect(Collectors.toList());