Как реализовать операцию «разделения» в Java 8 Stream? Под разделом я подразумеваю разделение потока на подпотоки заданного размера. В некотором смысле он будет идентичен методу Guava Iterators.partition(), только желательно, чтобы разделы представляли собой лениво вычисляемые потоки, а не списки.
раздел
Код: Выделить всё
public static UnmodifiableIterator partition(Iterator iterator,
int size)
Делает итератор на неизменяемые подсписки заданного размера (конечный список может быть меньше). Например, разделение итератора, содержащего [a, b, c, d, e] с размером раздела 3, дает [[a, b, c], [d, e]] -- внешний итератор, содержащий два внутренних списка из трех и двух элементов, все в исходном порядке.
Подробнее здесь:
https://stackoverflow.com/questions/324 ... a-8-stream