Accumulating elements – BiConsumer<A, T> accumulator();

The accumulator() method returns the function that performs the reduction operation. This is BiConsumer, which is an operation that accepts two input arguments and returns no result. The first input argument is the current result container (being the result of the reduction so far), and the second input argument is the current element from the stream. This function modifies the result container itself by accumulating the traversed element or an effect of traversing this element. In our case, accumulator() adds the currently traversed element to one of the two ArrayLists:

@Override
public BiConsumer<Map<Boolean, List<Melon>>, Melon> accumulator() {

return (var acc, var melon) -> {
acc.get(melon.getWeight() > 2000).add(melon);
};
}
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.225.235.144