Migrate toward java.util.function.Predicate

- Maintains binary and source compatibility
diff --git a/src/main/java/org/apache/commons/collections4/IteratorUtils.java b/src/main/java/org/apache/commons/collections4/IteratorUtils.java
index 856c4b8..b237316 100644
--- a/src/main/java/org/apache/commons/collections4/IteratorUtils.java
+++ b/src/main/java/org/apache/commons/collections4/IteratorUtils.java
@@ -28,6 +28,7 @@
 import java.util.ListIterator;
 import java.util.Map;
 import java.util.Objects;
+import java.util.function.Consumer;
 
 import org.apache.commons.collections4.functors.EqualPredicate;
 import org.apache.commons.collections4.iterators.ArrayIterator;
@@ -710,7 +711,7 @@
      * @throws NullPointerException if closure is null
      * @since 4.1
      */
-    public static <E> void forEach(final Iterator<E> iterator, final Closure<? super E> closure) {
+    public static <E> void forEach(final Iterator<E> iterator, final Consumer<? super E> closure) {
         Objects.requireNonNull(closure, "closure");
         if (iterator != null) {
             while (iterator.hasNext()) {