У меня есть большой файл, содержащий список элементов.
Я хотел бы создать партию элементов, сделать HTTP-запрос с этой партией (все элементы нужны как параметры в HTTP-запросе). Я могу сделать это очень легко с цикла for
, но как любовник Java 8, я хочу попробовать написать это с помощью платформы Java 8 Stream (и воспользоваться преимуществами ленивой обработки).
Пример:
List<String> batch = new ArrayList<>(BATCH_SIZE);
for (int i = 0; i < data.size(); i++) {
batch.add(data.get(i));
if (batch.size() == BATCH_SIZE) process(batch);
}
if (batch.size() > 0) process(batch);
Я хочу сделать что-то длинное
lazyFileStream.group(500).map(processBatch).collect(toList())
Каким будет лучший способ сделать это?