Создать конечный поток с функцией генератора - PullRequest
0 голосов
/ 19 октября 2019

У меня есть программа для чтения данных из нескольких источников, использования дерева турниров, их объединения, сортировки, упаковки данных в блоки и вывода блоков. Я реализовал это как функцию, которая возвращает ноль, когда больше нет доступных блоков.

DataBlock buildBlock()

Теперь я хочу вывести поток блоков, но единственный метод, который я нашел до сих пор, это Stream.generateкоторый генерирует бесконечный поток. Мой поток, конечно, не бесконечен. Как правильно создать конечный поток из этой функции?

1 Ответ

0 голосов
/ 19 октября 2019

Если вы используете хотя бы Java 9, вы можете применить takeWhile(Objects::nonNull) к вашему потоку. Если вы используете более старую версию Java, проверьте этот вопрос .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...