Просто измените это так,
tracings.stream().collect(ArrayList::new, (left, right) -> left.add(right), (left, right) -> {
left.addAll(right);
});
Вам нужно BiConsumer
НЕ BinaryOperator
. То, что вы передаете выше, это BinaryOperator
.
Вот пример BinaryOperator
.
BinaryOperator<List<Integer>> s = (left, right) -> {
left.addAll(right);
return left;
};
В качестве хорошей инженерной практики всегда предпочитайте ссылки на методы лямбдам. Итак, вот расширенная версия, использующая ссылки на методы вместо лямбд.
tracings.stream().collect(ArrayList::new, List::add, List::addAll);