Advertisement
Guest User

Untitled

a guest
Sep 21st, 2017
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.01 KB | None | 0 0
  1. package com.company;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5. import java.util.function.Consumer;
  6.  
  7. import static java.util.Arrays.asList;
  8.  
  9. /**
  10. * <p>
  11. * Создан 07.07.2016
  12. * <p>
  13. *
  14. * @author Евгений Уткин (evgeny.utkin@mediascope.net)
  15. */
  16. public class A {
  17.  
  18. public static void main(String[] args) {
  19. int batchSize = 2;
  20.  
  21. List<Integer> list = asList(1, 2, 3, 4, 5);
  22.  
  23. batchedIterator(list, batchSize, System.out::println);
  24. }
  25.  
  26. public static <T> void batchedIterator(List<T> list, int batchSize, Consumer<List<T>> consumer) {
  27. List<List<T>> result = new ArrayList<>(list.size() / batchSize + 1);
  28. for (int i = 0; i < list.size(); i = i + batchSize) {
  29. List<T> ts;
  30. if (list.size() < i + batchSize) {
  31. ts = list.subList(i, list.size());
  32. } else {
  33. ts = list.subList(i, i + batchSize);
  34. }
  35. result.add(ts);
  36. }
  37. result.parallelStream().forEach(consumer);
  38. }
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement