diff --git a/core-java-modules/core-java-streams-7/src/main/java/com/baeldung/streams/gatherer/SlidingWindowGatherer.java b/core-java-modules/core-java-streams-7/src/main/java/com/baeldung/streams/gatherer/SlidingWindowGatherer.java index 713d88e0e2a1..90d5b2eed747 100644 --- a/core-java-modules/core-java-streams-7/src/main/java/com/baeldung/streams/gatherer/SlidingWindowGatherer.java +++ b/core-java-modules/core-java-streams-7/src/main/java/com/baeldung/streams/gatherer/SlidingWindowGatherer.java @@ -1,7 +1,6 @@ package com.baeldung.streams.gatherer; import java.util.*; -import java.util.function.BiConsumer; import java.util.function.Supplier; import java.util.stream.Gatherer; @@ -18,15 +17,12 @@ public Integrator, Integer, List> integrator() { @Override public boolean integrate(Deque state, Integer element, Downstream> downstream) { state.addLast(element); - downstream.push(new ArrayList<>(state)); - state.removeFirst(); + if (state.size() == 3) { + downstream.push(new ArrayList<>(state)); + state.removeFirst(); + } return true; } }; } - - @Override - public BiConsumer, Downstream>> finisher() { - return (state, downstream) -> {}; - } }