Есть ли элегантный способ обработки потока кусками?

Мой точный сценарий - вставка данных в базу данных партиями, поэтому я хочу накапливать объекты DOM, а затем каждые 1000, сбрасывать их.

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

Я мог бы преобразовать поток в список, а затем использовать subList итеративным способом, но это тоже кажется неуклюжим.

Есть ли удобный способ выполнить действие через каждые n элементов, а затем продолжить работу с потоком, обрабатывая его только один раз?

Ответы на вопрос(5)

Ваш ответ на вопрос