You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2019/09/14 19:29:01 UTC

[commons-collections] branch master updated (b29bae0 -> 8f39771)

This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/commons-collections.git.


    from b29bae0  Travis CI: Allow builds on openjdk-ea to fail.
     new a2317f6  More lambdas, less boilerplate.
     new 6834b17  Better error message (also shorter and makes Checkstyle happy.)
     new 8f39771  Remove unused import.

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../commons/collections4/CollectionUtils.java      | 21 +----
 .../org/apache/commons/collections4/SetUtils.java  | 14 +---
 .../apache/commons/collections4/map/LRUMap.java    |  4 +-
 .../commons/collections4/map/MultiValueMap.java    | 27 +++---
 .../multimap/AbstractMultiValuedMap.java           |  9 +-
 .../collections4/multiset/AbstractMultiSet.java    |  7 +-
 .../commons/collections4/set/ListOrderedSet.java   |  3 +-
 .../commons/collections4/CollectionUtilsTest.java  | 56 ++-----------
 .../commons/collections4/FluentIterableTest.java   | 28 +------
 .../commons/collections4/IterableUtilsTest.java    | 96 ++++++----------------
 .../apache/commons/collections4/ListUtilsTest.java | 14 +---
 .../apache/commons/collections4/MapUtilsTest.java  | 25 ++----
 .../commons/collections4/MultiSetUtilsTest.java    | 14 +---
 .../apache/commons/collections4/SetUtilsTest.java  |  7 +-
 .../commons/collections4/SplitMapUtilsTest.java    | 91 +++-----------------
 .../commons/collections4/TransformerUtilsTest.java |  7 +-
 .../collections4/bag/PredicatedBagTest.java        |  7 +-
 .../collections4/bag/PredicatedSortedBagTest.java  |  7 +-
 .../commons/collections4/bag/TreeBagTest.java      |  9 +-
 .../collection/PredicatedCollectionTest.java       |  7 +-
 .../comparators/ComparatorChainTest.java           | 19 ++---
 .../collections4/iterators/FilterIteratorTest.java | 23 ++----
 .../iterators/FilterListIteratorTest.java          | 42 ++--------
 .../collections4/iterators/IteratorChainTest.java  |  7 +-
 .../iterators/LazyIteratorChainTest.java           |  7 +-
 .../collections4/list/PredicatedListTest.java      |  7 +-
 .../commons/collections4/map/DefaultedMapTest.java | 11 +--
 .../commons/collections4/map/LazyMapTest.java      |  7 +-
 .../collections4/map/PredicatedMapTest.java        |  7 +-
 .../collections4/map/PredicatedSortedMapTest.java  |  7 +-
 .../multiset/PredicatedMultiSetTest.java           |  7 +-
 .../collections4/queue/PredicatedQueueTest.java    |  7 +-
 .../set/PredicatedNavigableSetTest.java            |  7 +-
 .../collections4/set/PredicatedSetTest.java        |  7 +-
 .../collections4/set/PredicatedSortedSetTest.java  |  7 +-
 .../splitmap/TransformedSplitMapTest.java          | 21 +----
 36 files changed, 125 insertions(+), 521 deletions(-)


[commons-collections] 03/03: Remove unused import.

Posted by gg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-collections.git

commit 8f39771cb53207fd447e34571ab653caa2e5b762
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Sat Sep 14 15:28:32 2019 -0400

    Remove unused import.
---
 src/main/java/org/apache/commons/collections4/set/ListOrderedSet.java | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/main/java/org/apache/commons/collections4/set/ListOrderedSet.java b/src/main/java/org/apache/commons/collections4/set/ListOrderedSet.java
index d9e89c4..ea0db4e 100644
--- a/src/main/java/org/apache/commons/collections4/set/ListOrderedSet.java
+++ b/src/main/java/org/apache/commons/collections4/set/ListOrderedSet.java
@@ -19,11 +19,10 @@ package org.apache.commons.collections4.set;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.List;
 import java.util.ListIterator;
-import java.util.Set;
 import java.util.Objects;
+import java.util.Set;
 import java.util.function.Predicate;
 
 import org.apache.commons.collections4.CollectionUtils;


[commons-collections] 02/03: Better error message (also shorter and makes Checkstyle happy.)

Posted by gg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-collections.git

commit 6834b1791c30488be63f2d77484fc9ae2dd21b4b
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Sat Sep 14 15:28:11 2019 -0400

    Better error message (also shorter and makes Checkstyle happy.)
---
 src/main/java/org/apache/commons/collections4/map/LRUMap.java | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/apache/commons/collections4/map/LRUMap.java b/src/main/java/org/apache/commons/collections4/map/LRUMap.java
index ee13d39..fb83ad2 100644
--- a/src/main/java/org/apache/commons/collections4/map/LRUMap.java
+++ b/src/main/java/org/apache/commons/collections4/map/LRUMap.java
@@ -333,7 +333,7 @@ public class LRUMap<K, V>
                     throw new IllegalStateException(
                         "Entry.after=null, header.after=" + header.after + " header.before=" + header.before +
                         " key=" + key + " value=" + value + " size=" + size + " maxSize=" + maxSize +
-                        " This should not occur if your keys are immutable, and you have used synchronization properly.");
+                        " This should not occur if your keys are immutable and you used synchronization properly.");
                 }
             } else {
                 removeLRUEntry = removeLRU(reuse);
@@ -344,7 +344,7 @@ public class LRUMap<K, V>
                     throw new IllegalStateException(
                         "reuse=null, header.after=" + header.after + " header.before=" + header.before +
                         " key=" + key + " value=" + value + " size=" + size + " maxSize=" + maxSize +
-                        " This should not occur if your keys are immutable, and you have used synchronization properly.");
+                        " This should not occur if your keys are immutable and you used synchronization properly.");
             }
                 reuseMapping(reuse, hashIndex, hashCode, key, value);
             } else {


[commons-collections] 01/03: More lambdas, less boilerplate.

Posted by gg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-collections.git

commit a2317f629915a2553a8a7bc8ee7a136cf12fb8d0
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Sat Sep 14 15:25:22 2019 -0400

    More lambdas, less boilerplate.
---
 .../commons/collections4/CollectionUtils.java      | 21 +----
 .../org/apache/commons/collections4/SetUtils.java  | 14 +---
 .../commons/collections4/map/MultiValueMap.java    | 27 +++---
 .../multimap/AbstractMultiValuedMap.java           |  9 +-
 .../collections4/multiset/AbstractMultiSet.java    |  7 +-
 .../commons/collections4/CollectionUtilsTest.java  | 56 ++-----------
 .../commons/collections4/FluentIterableTest.java   | 28 +------
 .../commons/collections4/IterableUtilsTest.java    | 96 ++++++----------------
 .../apache/commons/collections4/ListUtilsTest.java | 14 +---
 .../apache/commons/collections4/MapUtilsTest.java  | 25 ++----
 .../commons/collections4/MultiSetUtilsTest.java    | 14 +---
 .../apache/commons/collections4/SetUtilsTest.java  |  7 +-
 .../commons/collections4/SplitMapUtilsTest.java    | 91 +++-----------------
 .../commons/collections4/TransformerUtilsTest.java |  7 +-
 .../collections4/bag/PredicatedBagTest.java        |  7 +-
 .../collections4/bag/PredicatedSortedBagTest.java  |  7 +-
 .../commons/collections4/bag/TreeBagTest.java      |  9 +-
 .../collection/PredicatedCollectionTest.java       |  7 +-
 .../comparators/ComparatorChainTest.java           | 19 ++---
 .../collections4/iterators/FilterIteratorTest.java | 23 ++----
 .../iterators/FilterListIteratorTest.java          | 42 ++--------
 .../collections4/iterators/IteratorChainTest.java  |  7 +-
 .../iterators/LazyIteratorChainTest.java           |  7 +-
 .../collections4/list/PredicatedListTest.java      |  7 +-
 .../commons/collections4/map/DefaultedMapTest.java | 11 +--
 .../commons/collections4/map/LazyMapTest.java      |  7 +-
 .../collections4/map/PredicatedMapTest.java        |  7 +-
 .../collections4/map/PredicatedSortedMapTest.java  |  7 +-
 .../multiset/PredicatedMultiSetTest.java           |  7 +-
 .../collections4/queue/PredicatedQueueTest.java    |  7 +-
 .../set/PredicatedNavigableSetTest.java            |  7 +-
 .../collections4/set/PredicatedSetTest.java        |  7 +-
 .../collections4/set/PredicatedSortedSetTest.java  |  7 +-
 .../splitmap/TransformedSplitMapTest.java          | 21 +----
 34 files changed, 122 insertions(+), 517 deletions(-)

diff --git a/src/main/java/org/apache/commons/collections4/CollectionUtils.java b/src/main/java/org/apache/commons/collections4/CollectionUtils.java
index 0ac25d3..2e6a79f 100644
--- a/src/main/java/org/apache/commons/collections4/CollectionUtils.java
+++ b/src/main/java/org/apache/commons/collections4/CollectionUtils.java
@@ -604,12 +604,7 @@ public class CollectionUtils {
         }
 
         @SuppressWarnings({ "unchecked", "rawtypes" })
-        final Transformer<E, ?> transformer = new Transformer() {
-            @Override
-            public EquatorWrapper<?> transform(final Object input) {
-                return new EquatorWrapper(equator, input);
-            }
-        };
+        final Transformer<E, ?> transformer = input -> new EquatorWrapper(equator, input);
 
         return isEqualCollection(collect(a, transformer), collect(b, transformer));
     }
@@ -1782,12 +1777,7 @@ public class CollectionUtils {
                                               final Iterable<? extends E> retain,
                                               final Equator<? super E> equator) {
 
-        final Transformer<E, EquatorWrapper<E>> transformer = new Transformer<E, EquatorWrapper<E>>() {
-            @Override
-            public EquatorWrapper<E> transform(final E input) {
-                return new EquatorWrapper<>(equator, input);
-            }
-        };
+        final Transformer<E, EquatorWrapper<E>> transformer = input -> new EquatorWrapper<>(equator, input);
 
         final Set<EquatorWrapper<E>> retainSet =
                 collect(retain, transformer, new HashSet<EquatorWrapper<E>>());
@@ -1860,12 +1850,7 @@ public class CollectionUtils {
                                               final Iterable<? extends E> remove,
                                               final Equator<? super E> equator) {
 
-        final Transformer<E, EquatorWrapper<E>> transformer = new Transformer<E, EquatorWrapper<E>>() {
-            @Override
-            public EquatorWrapper<E> transform(final E input) {
-                return new EquatorWrapper<>(equator, input);
-            }
-        };
+        final Transformer<E, EquatorWrapper<E>> transformer = input -> new EquatorWrapper<>(equator, input);
 
         final Set<EquatorWrapper<E>> removeSet =
                 collect(remove, transformer, new HashSet<EquatorWrapper<E>>());
diff --git a/src/main/java/org/apache/commons/collections4/SetUtils.java b/src/main/java/org/apache/commons/collections4/SetUtils.java
index 61a3a42..6d0bdc2 100644
--- a/src/main/java/org/apache/commons/collections4/SetUtils.java
+++ b/src/main/java/org/apache/commons/collections4/SetUtils.java
@@ -125,12 +125,7 @@ public class SetUtils {
             throw new NullPointerException("Sets must not be null.");
         }
 
-        final Predicate<E> notContainedInB = new Predicate<E>() {
-            @Override
-            public boolean evaluate(final E object) {
-                return !b.contains(object);
-            }
-        };
+        final Predicate<E> notContainedInB = object -> !b.contains(object);
 
         return new SetView<E>() {
             @Override
@@ -285,12 +280,7 @@ public class SetUtils {
             throw new NullPointerException("Sets must not be null.");
         }
 
-        final Predicate<E> containedInB = new Predicate<E>() {
-            @Override
-            public boolean evaluate(final E object) {
-                return b.contains(object);
-            }
-        };
+        final Predicate<E> containedInB = object -> b.contains(object);
 
         return new SetView<E>() {
             @Override
diff --git a/src/main/java/org/apache/commons/collections4/map/MultiValueMap.java b/src/main/java/org/apache/commons/collections4/map/MultiValueMap.java
index bfdfdd4..0b8c05c 100644
--- a/src/main/java/org/apache/commons/collections4/map/MultiValueMap.java
+++ b/src/main/java/org/apache/commons/collections4/map/MultiValueMap.java
@@ -438,23 +438,18 @@ public class MultiValueMap<K, V> extends AbstractMapDecorator<K, Object> impleme
                     return null;
                 }
                 final K key = keyIterator.next();
-                final Transformer<V, Entry<K, V>> transformer = new Transformer<V, Entry<K, V>>() {
+                final Transformer<V, Entry<K, V>> transformer = input -> new Entry<K, V>() {
                     @Override
-                    public Entry<K, V> transform(final V input) {
-                        return new Entry<K, V>() {
-                            @Override
-                            public K getKey() {
-                                return key;
-                            }
-                            @Override
-                            public V getValue() {
-                                return input;
-                            }
-                            @Override
-                            public V setValue(final V value) {
-                                throw new UnsupportedOperationException();
-                            }
-                        };
+                    public K getKey() {
+                        return key;
+                    }
+                    @Override
+                    public V getValue() {
+                        return input;
+                    }
+                    @Override
+                    public V setValue(final V value) {
+                        throw new UnsupportedOperationException();
                     }
                 };
                 return new TransformIterator<>(new ValuesIterator(key), transformer);
diff --git a/src/main/java/org/apache/commons/collections4/multimap/AbstractMultiValuedMap.java b/src/main/java/org/apache/commons/collections4/multimap/AbstractMultiValuedMap.java
index 201d11d..2beda5a 100644
--- a/src/main/java/org/apache/commons/collections4/multimap/AbstractMultiValuedMap.java
+++ b/src/main/java/org/apache/commons/collections4/multimap/AbstractMultiValuedMap.java
@@ -626,14 +626,7 @@ public abstract class AbstractMultiValuedMap<K, V> implements MultiValuedMap<K,
                         return null;
                     }
                     final K key = keyIterator.next();
-                    final Transformer<V, Entry<K, V>> entryTransformer = new Transformer<V, Entry<K, V>>() {
-
-                        @Override
-                        public Entry<K, V> transform(final V input) {
-                            return new MultiValuedMapEntry(key, input);
-                        }
-
-                    };
+                    final Transformer<V, Entry<K, V>> entryTransformer = input -> new MultiValuedMapEntry(key, input);
                     return new TransformIterator<>(new ValuesIterator(key), entryTransformer);
                 }
             };
diff --git a/src/main/java/org/apache/commons/collections4/multiset/AbstractMultiSet.java b/src/main/java/org/apache/commons/collections4/multiset/AbstractMultiSet.java
index 8a5f532..1c4248c 100644
--- a/src/main/java/org/apache/commons/collections4/multiset/AbstractMultiSet.java
+++ b/src/main/java/org/apache/commons/collections4/multiset/AbstractMultiSet.java
@@ -256,12 +256,7 @@ public abstract class AbstractMultiSet<E> extends AbstractCollection<E> implemen
      * @return the uniqueSet iterator
      */
     protected Iterator<E> createUniqueSetIterator() {
-        final Transformer<Entry<E>, E> transformer = new Transformer<Entry<E>, E>() {
-            @Override
-            public E transform(final Entry<E> entry) {
-                return entry.getElement();
-            }
-        };
+        final Transformer<Entry<E>, E> transformer = entry -> entry.getElement();
         return IteratorUtils.transformedIterator(entrySet().iterator(), transformer);
     }
 
diff --git a/src/test/java/org/apache/commons/collections4/CollectionUtilsTest.java b/src/test/java/org/apache/commons/collections4/CollectionUtilsTest.java
index 0ea3ebf..2ef3030 100644
--- a/src/test/java/org/apache/commons/collections4/CollectionUtilsTest.java
+++ b/src/test/java/org/apache/commons/collections4/CollectionUtilsTest.java
@@ -476,12 +476,7 @@ public class CollectionUtilsTest extends MockTestCase {
     @Test
     public void testSubtractWithPredicate() {
         // greater than 3
-        final Predicate<Number> predicate = new Predicate<Number>() {
-            @Override
-            public boolean evaluate(final Number n) {
-                return n.longValue() > 3L;
-            }
-        };
+        final Predicate<Number> predicate = n -> n.longValue() > 3L;
 
         final Collection<Number> col = CollectionUtils.subtract(iterableA, collectionC, predicate);
         final Map<Number, Integer> freq2 = CollectionUtils.getCardinalityMap(col);
@@ -733,22 +728,12 @@ public class CollectionUtilsTest extends MockTestCase {
 
         final Collection<String> strings = Arrays.asList("a", "b", "c");
         final StringBuffer result = new StringBuffer();
-        result.append(CollectionUtils.forAllButLastDo(strings, new Closure<String>() {
-            @Override
-            public void execute(final String input) {
-                result.append(input+";");
-            }
-        }));
+        result.append(CollectionUtils.forAllButLastDo(strings, (Closure<String>) input -> result.append(input+";")));
         assertEquals("a;b;c", result.toString());
 
         final Collection<String> oneString = Arrays.asList("a");
         final StringBuffer resultOne = new StringBuffer();
-        resultOne.append(CollectionUtils.forAllButLastDo(oneString, new Closure<String>() {
-            @Override
-            public void execute(final String input) {
-                resultOne.append(input+";");
-            }
-        }));
+        resultOne.append(CollectionUtils.forAllButLastDo(oneString, (Closure<String>) input -> resultOne.append(input+";")));
         assertEquals("a", resultOne.toString());
         assertNull(CollectionUtils.forAllButLastDo(strings, (Closure<String>) null)); // do not remove cast
         assertNull(CollectionUtils.forAllButLastDo((Collection<String>) null, (Closure<String>) null)); // do not remove cast
@@ -1108,12 +1093,7 @@ public class CollectionUtilsTest extends MockTestCase {
     }
 
     // -----------------------------------------------------------------------
-    private static Predicate<Number> EQUALS_TWO = new Predicate<Number>() {
-        @Override
-        public boolean evaluate(final Number input) {
-            return input.intValue() == 2;
-        }
-    };
+    private static Predicate<Number> EQUALS_TWO = input -> input.intValue() == 2;
 
 //Up to here
     @Test
@@ -1296,12 +1276,7 @@ public class CollectionUtilsTest extends MockTestCase {
         assertTrue(collection.contains(2L) && !collection.contains(1));
     }
 
-    Transformer<Object, Integer> TRANSFORM_TO_INTEGER = new Transformer<Object, Integer>() {
-        @Override
-        public Integer transform(final Object input) {
-            return Integer.valueOf(((Long)input).intValue());
-        }
-    };
+    Transformer<Object, Integer> TRANSFORM_TO_INTEGER = input -> Integer.valueOf(((Long)input).intValue());
 
     @Test
     public void transform1() {
@@ -1333,12 +1308,7 @@ public class CollectionUtilsTest extends MockTestCase {
         set.add(1L);
         set.add(2L);
         set.add(3L);
-        CollectionUtils.transform(set, new Transformer<Object, Integer>() {
-            @Override
-            public Integer transform(final Object input) {
-                return 4;
-            }
-        });
+        CollectionUtils.transform(set, input -> 4);
         assertEquals(1, set.size());
         assertEquals(4, set.iterator().next());
     }
@@ -1831,20 +1801,10 @@ public class CollectionUtilsTest extends MockTestCase {
         assertFalse(CollectionUtils.matchesAll(null, null));
         assertFalse(CollectionUtils.matchesAll(collectionA, null));
 
-        final Predicate<Integer> lessThanFive = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer object) {
-                return object < 5;
-            }
-        };
+        final Predicate<Integer> lessThanFive = object -> object < 5;
         assertTrue(CollectionUtils.matchesAll(collectionA, lessThanFive));
 
-        final Predicate<Integer> lessThanFour = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer object) {
-                return object < 4;
-            }
-        };
+        final Predicate<Integer> lessThanFour = object -> object < 4;
         assertFalse(CollectionUtils.matchesAll(collectionA, lessThanFour));
 
         assertTrue(CollectionUtils.matchesAll(null, lessThanFour));
diff --git a/src/test/java/org/apache/commons/collections4/FluentIterableTest.java b/src/test/java/org/apache/commons/collections4/FluentIterableTest.java
index aca8d70..6c38914 100644
--- a/src/test/java/org/apache/commons/collections4/FluentIterableTest.java
+++ b/src/test/java/org/apache/commons/collections4/FluentIterableTest.java
@@ -103,12 +103,7 @@ public class FluentIterableTest {
         emptyIterable = Collections.emptyList();
     }
 
-    private static Predicate<Number> EVEN = new Predicate<Number>() {
-        @Override
-        public boolean evaluate(final Number input) {
-            return input.intValue() % 2 == 0;
-        }
-    };
+    private static Predicate<Number> EVEN = input -> input.intValue() % 2 == 0;
 
     // -----------------------------------------------------------------------
     @Test
@@ -198,12 +193,7 @@ public class FluentIterableTest {
 
     @Test
     public void filter() {
-        final Predicate<Integer> smallerThan3 = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer object) {
-                return object.intValue() < 3;
-            }
-        };
+        final Predicate<Integer> smallerThan3 = object -> object.intValue() < 3;
         List<Integer> result = FluentIterable.of(iterableA).filter(smallerThan3).toList();
         assertEquals(3, result.size());
         assertEquals(Arrays.asList(1, 2, 2), result);
@@ -223,12 +213,7 @@ public class FluentIterableTest {
     @Test
     public void forEach() {
         final AtomicInteger sum = new AtomicInteger(0);
-        final Closure<Integer> closure = new Closure<Integer>() {
-            @Override
-            public void execute(final Integer input) {
-                sum.addAndGet(input);
-            }
-        };
+        final Closure<Integer> closure = input -> sum.addAndGet(input);
 
         FluentIterable.of(iterableA).forEach(closure);
         int expectedSum = 0;
@@ -315,12 +300,7 @@ public class FluentIterableTest {
 
     @Test
     public void transform() {
-        final Transformer<Integer, Integer> squared = new Transformer<Integer, Integer>() {
-            @Override
-            public Integer transform(final Integer object) {
-                return object * object;
-            }
-        };
+        final Transformer<Integer, Integer> squared = object -> object * object;
         List<Integer> result = FluentIterable.of(iterableA).transform(squared).toList();
         assertEquals(10, result.size());
         assertEquals(Arrays.asList(1, 4, 4, 9, 9, 9, 16, 16, 16, 16), result);
diff --git a/src/test/java/org/apache/commons/collections4/IterableUtilsTest.java b/src/test/java/org/apache/commons/collections4/IterableUtilsTest.java
index 564193b..3cfb0e9 100644
--- a/src/test/java/org/apache/commons/collections4/IterableUtilsTest.java
+++ b/src/test/java/org/apache/commons/collections4/IterableUtilsTest.java
@@ -91,19 +91,9 @@ public class IterableUtilsTest {
         emptyIterable = Collections.emptyList();
     }
 
-    private static Predicate<Number> EQUALS_TWO = new Predicate<Number>() {
-        @Override
-        public boolean evaluate(final Number input) {
-            return input.intValue() == 2;
-        }
-    };
+    private static Predicate<Number> EQUALS_TWO = input -> input.intValue() == 2;
 
-    private static Predicate<Number> EVEN = new Predicate<Number>() {
-        @Override
-        public boolean evaluate(final Number input) {
-            return input.intValue() % 2 == 0;
-        }
-    };
+    private static Predicate<Number> EVEN = input -> input.intValue() % 2 == 0;
 
     // -----------------------------------------------------------------------
     @Test
@@ -373,20 +363,10 @@ public class IterableUtilsTest {
             // expected
         }
 
-        final Predicate<Integer> lessThanFive = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer object) {
-                return object < 5;
-            }
-        };
+        final Predicate<Integer> lessThanFive = object -> object < 5;
         assertTrue(IterableUtils.matchesAll(iterableA, lessThanFive));
 
-        final Predicate<Integer> lessThanFour = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer object) {
-                return object < 4;
-            }
-        };
+        final Predicate<Integer> lessThanFour = object -> object < 4;
         assertFalse(IterableUtils.matchesAll(iterableA, lessThanFour));
 
         assertTrue(IterableUtils.matchesAll(null, lessThanFour));
@@ -505,29 +485,18 @@ public class IterableUtilsTest {
         result = IterableUtils.toString(null);
         assertEquals("[]", result);
 
-        result = IterableUtils.toString(iterableA, new Transformer<Integer, String>() {
-            @Override
-            public String transform(final Integer input) {
-                return new Integer(input * 2).toString();
-            }
-        });
+        result = IterableUtils.toString(iterableA, input -> new Integer(input * 2).toString());
         assertEquals("[2, 4, 4, 6, 6, 6, 8, 8, 8, 8]", result);
 
-        result = IterableUtils.toString(new ArrayList<Integer>(), new Transformer<Integer, String>() {
-            @Override
-            public String transform(final Integer input) {
-                fail("not supposed to reach here");
-                return "";
-            }
+        result = IterableUtils.toString(new ArrayList<Integer>(), input -> {
+            fail("not supposed to reach here");
+            return "";
         });
         assertEquals("[]", result);
 
-        result = IterableUtils.toString(null, new Transformer<Integer, String>() {
-            @Override
-            public String transform(final Integer input) {
-                fail("not supposed to reach here");
-                return "";
-            }
+        result = IterableUtils.toString(null, input -> {
+            fail("not supposed to reach here");
+            return "";
         });
         assertEquals("[]", result);
     }
@@ -535,12 +504,7 @@ public class IterableUtilsTest {
     @Test
     public void testToStringDelimiter() {
 
-        final Transformer<Integer, String> transformer = new Transformer<Integer, String>() {
-            @Override
-            public String transform(final Integer input) {
-                return new Integer(input * 2).toString();
-            }
-        };
+        final Transformer<Integer, String> transformer = input -> new Integer(input * 2).toString();
 
         String result = IterableUtils.toString(iterableA, transformer, "", "", "");
         assertEquals("2446668888", result);
@@ -572,12 +536,9 @@ public class IterableUtilsTest {
 
     @Test
     public void testToStringWithNullArguments() {
-        final String result = IterableUtils.toString(null, new Transformer<Integer, String>() {
-            @Override
-            public String transform(final Integer input) {
-                fail("not supposed to reach here");
-                return "";
-            }
+        final String result = IterableUtils.toString(null, input -> {
+            fail("not supposed to reach here");
+            return "";
         }, "", "(", ")");
         assertEquals("()", result);
 
@@ -589,12 +550,9 @@ public class IterableUtilsTest {
         }
 
         try {
-            IterableUtils.toString(new ArrayList<Integer>(), new Transformer<Integer, String>() {
-                @Override
-                public String transform(final Integer input) {
-                    fail("not supposed to reach here");
-                    return "";
-                }
+            IterableUtils.toString(new ArrayList<Integer>(), input -> {
+                fail("not supposed to reach here");
+                return "";
             }, null, "(", ")");
             fail("expecting NullPointerException");
         } catch (final NullPointerException ex) {
@@ -602,12 +560,9 @@ public class IterableUtilsTest {
         }
 
         try {
-            IterableUtils.toString(new ArrayList<Integer>(), new Transformer<Integer, String>() {
-                @Override
-                public String transform(final Integer input) {
-                    fail("not supposed to reach here");
-                    return "";
-                }
+            IterableUtils.toString(new ArrayList<Integer>(), input -> {
+                fail("not supposed to reach here");
+                return "";
             }, "", null, ")");
             fail("expecting NullPointerException");
         } catch (final NullPointerException ex) {
@@ -615,12 +570,9 @@ public class IterableUtilsTest {
         }
 
         try {
-            IterableUtils.toString(new ArrayList<Integer>(), new Transformer<Integer, String>() {
-                @Override
-                public String transform(final Integer input) {
-                    fail("not supposed to reach here");
-                    return "";
-                }
+            IterableUtils.toString(new ArrayList<Integer>(), input -> {
+                fail("not supposed to reach here");
+                return "";
             }, "", "(", null);
             fail("expecting NullPointerException");
         } catch (final NullPointerException ex) {
diff --git a/src/test/java/org/apache/commons/collections4/ListUtilsTest.java b/src/test/java/org/apache/commons/collections4/ListUtilsTest.java
index 9a3be4c..c8ec12d 100644
--- a/src/test/java/org/apache/commons/collections4/ListUtilsTest.java
+++ b/src/test/java/org/apache/commons/collections4/ListUtilsTest.java
@@ -122,12 +122,7 @@ public class ListUtilsTest {
 
     @Test
     public void testPredicatedList() {
-        final Predicate<Object> predicate = new Predicate<Object>() {
-            @Override
-            public boolean evaluate(final Object o) {
-                return o instanceof String;
-            }
-        };
+        final Predicate<Object> predicate = o -> o instanceof String;
         final List<Object> list = ListUtils.predicatedList(new ArrayList<>(), predicate);
         assertTrue("returned object should be a PredicatedList", list instanceof PredicatedList);
         try {
@@ -452,12 +447,7 @@ public class ListUtilsTest {
         assertEquals(strings, partitionMax.get(0));
     }
 
-    private static Predicate<Number> EQUALS_TWO = new Predicate<Number>() {
-        @Override
-        public boolean evaluate(final Number input) {
-            return input.intValue() == 2;
-        }
-    };
+    private static Predicate<Number> EQUALS_TWO = input -> input.intValue() == 2;
 
     @Test
     @SuppressWarnings("boxing") // OK in test code
diff --git a/src/test/java/org/apache/commons/collections4/MapUtilsTest.java b/src/test/java/org/apache/commons/collections4/MapUtilsTest.java
index 6c72d78..0b670da 100644
--- a/src/test/java/org/apache/commons/collections4/MapUtilsTest.java
+++ b/src/test/java/org/apache/commons/collections4/MapUtilsTest.java
@@ -65,12 +65,7 @@ public class MapUtilsTest extends AbstractAvailableLocalesTest {
     }
 
     public Predicate<Object> getPredicate() {
-        return new Predicate<Object>() {
-            @Override
-            public boolean evaluate(final Object o) {
-                return o instanceof String;
-            }
-        };
+        return o -> o instanceof String;
     }
 
     @Test
@@ -122,14 +117,11 @@ public class MapUtilsTest extends AbstractAvailableLocalesTest {
 
     @Test
     public void testLazyMapTransformer() {
-        final Map<Object, Object> map = MapUtils.lazyMap(new HashMap<>(), new Transformer<Object, Object>() {
-            @Override
-            public Object transform(final Object mapKey) {
-                if (mapKey instanceof String) {
-                    return Integer.valueOf((String) mapKey);
-                }
-                return null;
+        final Map<Object, Object> map = MapUtils.lazyMap(new HashMap<>(), (Transformer<Object, Object>) mapKey -> {
+            if (mapKey instanceof String) {
+                return Integer.valueOf((String) mapKey);
             }
+            return null;
         });
 
         assertEquals(0, map.size());
@@ -859,12 +851,7 @@ public class MapUtilsTest extends AbstractAvailableLocalesTest {
 
         // Now test key transform population
         final MultiValueMap<Integer, X> map = MultiValueMap.multiValueMap(new TreeMap<Integer, Collection<X>>());
-        MapUtils.populateMap(map, list, new Transformer<X, Integer>() {
-            @Override
-            public Integer transform(final X input) {
-                return input.key;
-            }
-        }, TransformerUtils.<X> nopTransformer());
+        MapUtils.populateMap(map, list, (Transformer<X, Integer>) input -> input.key, TransformerUtils.<X> nopTransformer());
         assertEquals(list.size(), map.totalSize());
 
         for (int i = 0; i < list.size(); i++) {
diff --git a/src/test/java/org/apache/commons/collections4/MultiSetUtilsTest.java b/src/test/java/org/apache/commons/collections4/MultiSetUtilsTest.java
index 24c1759..56be2fb 100644
--- a/src/test/java/org/apache/commons/collections4/MultiSetUtilsTest.java
+++ b/src/test/java/org/apache/commons/collections4/MultiSetUtilsTest.java
@@ -92,12 +92,7 @@ public class MultiSetUtilsTest {
      */
     @Test
     public void testPredicatedMultiSet() {
-        final Predicate<String> predicate = new Predicate<String>() {
-            @Override
-            public boolean evaluate(final String object) {
-                return object.length() == 1;
-            };
-        };
+        final Predicate<String> predicate = object -> object.length() == 1;
         final MultiSet<String> predicated = MultiSetUtils.predicatedMultiSet(multiSet, predicate);
         assertEquals(multiSet.size(), predicated.size());
         assertEquals(multiSet.getCount("a"), predicated.getCount("a"));
@@ -115,12 +110,7 @@ public class MultiSetUtilsTest {
         }
 
         try {
-            MultiSetUtils.predicatedMultiSet(multiSet, new Predicate<String>() {
-                @Override
-                public boolean evaluate(final String object) {
-                    return object.equals("a");
-                };
-            });
+            MultiSetUtils.predicatedMultiSet(multiSet, object -> object.equals("a"));
             fail("Predicate is violated for all elements not being 'a'");
         }
         catch (final IllegalArgumentException iae) {
diff --git a/src/test/java/org/apache/commons/collections4/SetUtilsTest.java b/src/test/java/org/apache/commons/collections4/SetUtilsTest.java
index 70c43d6..c44b3ff 100644
--- a/src/test/java/org/apache/commons/collections4/SetUtilsTest.java
+++ b/src/test/java/org/apache/commons/collections4/SetUtilsTest.java
@@ -231,12 +231,7 @@ public class SetUtilsTest {
 
     @Test
     public void testpredicatedSet() {
-        final Predicate<Object> predicate = new Predicate<Object>() {
-            @Override
-            public boolean evaluate(final Object o) {
-                return o instanceof String;
-            }
-        };
+        final Predicate<Object> predicate = o -> o instanceof String;
         final Set<Object> set = SetUtils.predicatedSet(new HashSet<>(), predicate);
         assertTrue("returned object should be a PredicatedSet", set instanceof PredicatedSet);
         try {
diff --git a/src/test/java/org/apache/commons/collections4/SplitMapUtilsTest.java b/src/test/java/org/apache/commons/collections4/SplitMapUtilsTest.java
index 37b9866..6487a29 100644
--- a/src/test/java/org/apache/commons/collections4/SplitMapUtilsTest.java
+++ b/src/test/java/org/apache/commons/collections4/SplitMapUtilsTest.java
@@ -41,12 +41,7 @@ public class SplitMapUtilsTest {
     private Map<String, Integer> backingMap;
     private TransformedSplitMap<String, String, String, Integer> transformedMap;
 
-    private final Transformer<String, Integer> stringToInt = new Transformer<String, Integer>() {
-        @Override
-        public Integer transform(final String input) {
-            return Integer.valueOf(input);
-        }
-    };
+    private final Transformer<String, Integer> stringToInt = input -> Integer.valueOf(input);
 
     @Before
     public void setUp() throws Exception {
@@ -84,32 +79,17 @@ public class SplitMapUtilsTest {
         // check individual operations
         int sz = map.size();
 
-        attemptPutOperation(new Runnable() {
-            @Override
-            public void run() {
-                map.clear();
-            }
-        });
+        attemptPutOperation(() -> map.clear());
 
         assertEquals(sz, map.size());
 
-        attemptPutOperation(new Runnable() {
-            @Override
-            public void run() {
-                map.put("foo", 100);
-            }
-        });
+        attemptPutOperation(() -> map.put("foo", 100));
 
         final HashMap<String, Integer> m = new HashMap<>();
         m.put("foo", 100);
         m.put("bar", 200);
         m.put("baz", 300);
-        attemptPutOperation(new Runnable() {
-            @Override
-            public void run() {
-                map.putAll(m);
-            }
-        });
+        attemptPutOperation(() -> map.putAll(m));
 
         // equals, hashcode
         final IterableMap<String, Integer> other = SplitMapUtils.readableMap(transformedMap);
@@ -135,60 +115,15 @@ public class SplitMapUtilsTest {
     @SuppressWarnings("unchecked")
     public void testWritableMap() {
         final Map<String, String> map = SplitMapUtils.writableMap(transformedMap);
-        attemptGetOperation(new Runnable() {
-            @Override
-            public void run() {
-                map.get(null);
-            }
-        });
-        attemptGetOperation(new Runnable() {
-            @Override
-            public void run() {
-                map.entrySet();
-            }
-        });
-        attemptGetOperation(new Runnable() {
-            @Override
-            public void run() {
-                map.keySet();
-            }
-        });
-        attemptGetOperation(new Runnable() {
-            @Override
-            public void run() {
-                map.values();
-            }
-        });
-        attemptGetOperation(new Runnable() {
-            @Override
-            public void run() {
-                map.size();
-            }
-        });
-        attemptGetOperation(new Runnable() {
-            @Override
-            public void run() {
-                map.isEmpty();
-            }
-        });
-        attemptGetOperation(new Runnable() {
-            @Override
-            public void run() {
-                map.containsKey(null);
-            }
-        });
-        attemptGetOperation(new Runnable() {
-            @Override
-            public void run() {
-                map.containsValue(null);
-            }
-        });
-        attemptGetOperation(new Runnable() {
-            @Override
-            public void run() {
-                map.remove(null);
-            }
-        });
+        attemptGetOperation(() -> map.get(null));
+        attemptGetOperation(() -> map.entrySet());
+        attemptGetOperation(() -> map.keySet());
+        attemptGetOperation(() -> map.values());
+        attemptGetOperation(() -> map.size());
+        attemptGetOperation(() -> map.isEmpty());
+        attemptGetOperation(() -> map.containsKey(null));
+        attemptGetOperation(() -> map.containsValue(null));
+        attemptGetOperation(() -> map.remove(null));
 
         // equals, hashcode
         final Map<String, String> other = SplitMapUtils.writableMap(transformedMap);
diff --git a/src/test/java/org/apache/commons/collections4/TransformerUtilsTest.java b/src/test/java/org/apache/commons/collections4/TransformerUtilsTest.java
index b31db39..b47d10f 100644
--- a/src/test/java/org/apache/commons/collections4/TransformerUtilsTest.java
+++ b/src/test/java/org/apache/commons/collections4/TransformerUtilsTest.java
@@ -247,12 +247,7 @@ public class TransformerUtilsTest {
         assertEquals("A", TransformerUtils.ifTransformer(TruePredicate.truePredicate(), a, b).transform(null));
         assertEquals("B", TransformerUtils.ifTransformer(FalsePredicate.falsePredicate(), a, b).transform(null));
 
-        final Predicate<Integer> lessThanFivePredicate = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer value) {
-                return value < 5;
-            }
-        };
+        final Predicate<Integer> lessThanFivePredicate = value -> value < 5;
         // if/else tests
         assertEquals("A", TransformerUtils.<Integer, String>ifTransformer(lessThanFivePredicate, a, b).transform(1));
         assertEquals("B", TransformerUtils.<Integer, String>ifTransformer(lessThanFivePredicate, a, b).transform(5));
diff --git a/src/test/java/org/apache/commons/collections4/bag/PredicatedBagTest.java b/src/test/java/org/apache/commons/collections4/bag/PredicatedBagTest.java
index d99adfd..1ee3456 100644
--- a/src/test/java/org/apache/commons/collections4/bag/PredicatedBagTest.java
+++ b/src/test/java/org/apache/commons/collections4/bag/PredicatedBagTest.java
@@ -44,12 +44,7 @@ public class PredicatedBagTest<T> extends AbstractBagTest<T> {
     //--------------------------------------------------------------------------
 
     protected Predicate<T> stringPredicate() {
-        return new Predicate<T>() {
-            @Override
-            public boolean evaluate(final T o) {
-                return o instanceof String;
-            }
-        };
+        return o -> o instanceof String;
     }
 
     protected Predicate<T> truePredicate = TruePredicate.<T>truePredicate();
diff --git a/src/test/java/org/apache/commons/collections4/bag/PredicatedSortedBagTest.java b/src/test/java/org/apache/commons/collections4/bag/PredicatedSortedBagTest.java
index 87312d3..4989189 100644
--- a/src/test/java/org/apache/commons/collections4/bag/PredicatedSortedBagTest.java
+++ b/src/test/java/org/apache/commons/collections4/bag/PredicatedSortedBagTest.java
@@ -46,12 +46,7 @@ public class PredicatedSortedBagTest<T> extends AbstractSortedBagTest<T> {
     //--------------------------------------------------------------------------
 
     protected Predicate<T> stringPredicate() {
-        return new Predicate<T>() {
-            @Override
-            public boolean evaluate(final T o) {
-                return o instanceof String;
-            }
-        };
+        return o -> o instanceof String;
     }
 
     protected Predicate<T> truePredicate = TruePredicate.<T>truePredicate();
diff --git a/src/test/java/org/apache/commons/collections4/bag/TreeBagTest.java b/src/test/java/org/apache/commons/collections4/bag/TreeBagTest.java
index 380eecc..4d56fc4 100644
--- a/src/test/java/org/apache/commons/collections4/bag/TreeBagTest.java
+++ b/src/test/java/org/apache/commons/collections4/bag/TreeBagTest.java
@@ -16,8 +16,6 @@
  */
 package org.apache.commons.collections4.bag;
 
-import java.util.Comparator;
-
 import junit.framework.Test;
 
 import org.apache.commons.collections4.Bag;
@@ -75,12 +73,7 @@ public class TreeBagTest<T> extends AbstractSortedBagTest<T> {
             // expected;
         }
 
-        final Bag<String> bag2 = new TreeBag<>(new Comparator<String>() {
-            @Override
-            public int compare(final String o1, final String o2) {
-                return o1.compareTo(o2);
-            }
-        });
+        final Bag<String> bag2 = new TreeBag<>((o1, o2) -> o1.compareTo(o2));
         try {
             // jdk bug: adding null to an empty TreeMap works
             // thus ensure that the bag is not empty before adding null
diff --git a/src/test/java/org/apache/commons/collections4/collection/PredicatedCollectionTest.java b/src/test/java/org/apache/commons/collections4/collection/PredicatedCollectionTest.java
index 4635eb1..65dd4bc 100644
--- a/src/test/java/org/apache/commons/collections4/collection/PredicatedCollectionTest.java
+++ b/src/test/java/org/apache/commons/collections4/collection/PredicatedCollectionTest.java
@@ -76,12 +76,7 @@ public class PredicatedCollectionTest<E> extends AbstractCollectionTest<E> {
 
     //-----------------------------------------------------------------------
     protected Predicate<E> testPredicate =
-        new Predicate<E>() {
-            @Override
-            public boolean evaluate(final E o) {
-                return o instanceof String;
-            }
-        };
+        o -> o instanceof String;
 
     public Collection<E> makeTestCollection() {
         return decorateCollection(new ArrayList<E>(), testPredicate);
diff --git a/src/test/java/org/apache/commons/collections4/comparators/ComparatorChainTest.java b/src/test/java/org/apache/commons/collections4/comparators/ComparatorChainTest.java
index d9edbae..1417caf 100644
--- a/src/test/java/org/apache/commons/collections4/comparators/ComparatorChainTest.java
+++ b/src/test/java/org/apache/commons/collections4/comparators/ComparatorChainTest.java
@@ -103,18 +103,15 @@ public class ComparatorChainTest extends AbstractComparatorTest<ComparatorChainT
         // -1 * Integer.MIN_VALUE is less than 0,
         // test that ComparatorChain handles this edge case correctly
         final ComparatorChain<Integer> chain = new ComparatorChain<>();
-        chain.addComparator(new Comparator<Integer>() {
-            @Override
-            public int compare(final Integer a, final Integer b) {
-                final int result = a.compareTo(b);
-                if (result < 0) {
-                    return Integer.MIN_VALUE;
-                }
-                if (result > 0) {
-                    return Integer.MAX_VALUE;
-                }
-                return 0;
+        chain.addComparator((a, b) -> {
+            final int result = a.compareTo(b);
+            if (result < 0) {
+                return Integer.MIN_VALUE;
             }
+            if (result > 0) {
+                return Integer.MAX_VALUE;
+            }
+            return 0;
         }, true);
 
         assertTrue(chain.compare(Integer.valueOf(4), Integer.valueOf(5)) > 0);
diff --git a/src/test/java/org/apache/commons/collections4/iterators/FilterIteratorTest.java b/src/test/java/org/apache/commons/collections4/iterators/FilterIteratorTest.java
index bc2c755..82dd834 100644
--- a/src/test/java/org/apache/commons/collections4/iterators/FilterIteratorTest.java
+++ b/src/test/java/org/apache/commons/collections4/iterators/FilterIteratorTest.java
@@ -157,16 +157,13 @@ public class FilterIteratorTest<E> extends AbstractIteratorTest<E> {
     }
 
     private void verifyElementsInPredicate(final String[] elements) {
-        final Predicate<E> pred = new Predicate<E>() {
-            @Override
-            public boolean evaluate(final E x) {
-                for (final String element : elements) {
-                    if (element.equals(x)) {
-                        return true;
-                    }
+        final Predicate<E> pred = x -> {
+            for (final String element : elements) {
+                if (element.equals(x)) {
+                    return true;
                 }
-                return false;
             }
+            return false;
         };
         initIterator();
         iterator.setPredicate(pred);
@@ -199,10 +196,7 @@ public class FilterIteratorTest<E> extends AbstractIteratorTest<E> {
      * @return "filtered" iterator
      */
     protected FilterIterator<E> makePassThroughFilter(final Iterator<E> i) {
-        final Predicate<E> pred = new Predicate<E>() {
-                @Override
-                public boolean evaluate(final E x) { return true; }
-        };
+        final Predicate<E> pred = x -> true;
         return new FilterIterator<>(i, pred);
     }
 
@@ -214,10 +208,7 @@ public class FilterIteratorTest<E> extends AbstractIteratorTest<E> {
      * @return "filtered" iterator
      */
     protected FilterIterator<E> makeBlockAllFilter(final Iterator<E> i) {
-        final Predicate<E> pred = new Predicate<E>() {
-                @Override
-                public boolean evaluate(final E x) { return false; }
-        };
+        final Predicate<E> pred = x -> false;
         return new FilterIterator<>(i, pred);
     }
 }
diff --git a/src/test/java/org/apache/commons/collections4/iterators/FilterListIteratorTest.java b/src/test/java/org/apache/commons/collections4/iterators/FilterListIteratorTest.java
index 03b7cb3..817a06f 100644
--- a/src/test/java/org/apache/commons/collections4/iterators/FilterListIteratorTest.java
+++ b/src/test/java/org/apache/commons/collections4/iterators/FilterListIteratorTest.java
@@ -70,47 +70,17 @@ public class FilterListIteratorTest {
             if (i % 6 == 0) { sixes.add(Integer.valueOf(i)); }
         }
 
-        truePred = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer x) {
-                return true;
-            }
-        };
+        truePred = x -> true;
 
-        falsePred = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer x) {
-                return true;
-            }
-        };
+        falsePred = x -> true;
 
-        evenPred = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer x) {
-                return x % 2 == 0;
-            }
-        };
+        evenPred = x -> x % 2 == 0;
 
-        oddPred = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer x) {
-                return x % 2 != 0; //works for all numbers, not just >= 0 as is the case for "x % 2 == 1"
-            }
-        };
+        oddPred = x -> x % 2 != 0;
 
-        threePred = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer x) {
-                return x % 3 == 0;
-            }
-        };
+        threePred = x -> x % 3 == 0;
 
-        fourPred = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer x) {
-                return x % 4 == 0;
-            }
-        };
+        fourPred = x -> x % 4 == 0;
 
     }
 
diff --git a/src/test/java/org/apache/commons/collections4/iterators/IteratorChainTest.java b/src/test/java/org/apache/commons/collections4/iterators/IteratorChainTest.java
index 1fd5639..6786b18 100644
--- a/src/test/java/org/apache/commons/collections4/iterators/IteratorChainTest.java
+++ b/src/test/java/org/apache/commons/collections4/iterators/IteratorChainTest.java
@@ -91,12 +91,7 @@ public class IteratorChainTest extends AbstractIteratorTest<String> {
 
     public void testRemoveFromFilteredIterator() {
 
-        final Predicate<Integer> myPredicate = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer i) {
-                return i.compareTo(Integer.valueOf(4)) < 0;
-            }
-        };
+        final Predicate<Integer> myPredicate = i -> i.compareTo(Integer.valueOf(4)) < 0;
 
         final List<Integer> list1 = new ArrayList<>();
         final List<Integer> list2 = new ArrayList<>();
diff --git a/src/test/java/org/apache/commons/collections4/iterators/LazyIteratorChainTest.java b/src/test/java/org/apache/commons/collections4/iterators/LazyIteratorChainTest.java
index a8e4c06..1826118 100644
--- a/src/test/java/org/apache/commons/collections4/iterators/LazyIteratorChainTest.java
+++ b/src/test/java/org/apache/commons/collections4/iterators/LazyIteratorChainTest.java
@@ -105,12 +105,7 @@ public class LazyIteratorChainTest extends AbstractIteratorTest<String> {
 
     public void testRemoveFromFilteredIterator() {
 
-        final Predicate<Integer> myPredicate = new Predicate<Integer>() {
-            @Override
-            public boolean evaluate(final Integer i) {
-                return i.compareTo(Integer.valueOf(4)) < 0;
-            }
-        };
+        final Predicate<Integer> myPredicate = i -> i.compareTo(Integer.valueOf(4)) < 0;
 
         final List<Integer> list1 = new ArrayList<>();
         final List<Integer> list2 = new ArrayList<>();
diff --git a/src/test/java/org/apache/commons/collections4/list/PredicatedListTest.java b/src/test/java/org/apache/commons/collections4/list/PredicatedListTest.java
index 1e831ba..8ef6a41 100644
--- a/src/test/java/org/apache/commons/collections4/list/PredicatedListTest.java
+++ b/src/test/java/org/apache/commons/collections4/list/PredicatedListTest.java
@@ -56,12 +56,7 @@ public class PredicatedListTest<E> extends AbstractListTest<E> {
 //--------------------------------------------------------------------
 
     protected Predicate<E> testPredicate =
-        new Predicate<E>() {
-            @Override
-            public boolean evaluate(final E o) {
-                return o instanceof String;
-            }
-        };
+        o -> o instanceof String;
 
     public List<E> makeTestList() {
         return decorateList(new ArrayList<E>(), testPredicate);
diff --git a/src/test/java/org/apache/commons/collections4/map/DefaultedMapTest.java b/src/test/java/org/apache/commons/collections4/map/DefaultedMapTest.java
index a6953d3..eeb2d92 100644
--- a/src/test/java/org/apache/commons/collections4/map/DefaultedMapTest.java
+++ b/src/test/java/org/apache/commons/collections4/map/DefaultedMapTest.java
@@ -104,14 +104,11 @@ public class DefaultedMapTest<K, V> extends AbstractIterableMapTest<K, V> {
     @SuppressWarnings("unchecked")
     public void testMapGet4() {
         final HashMap<K, V> base = new HashMap<>();
-        final Map<K, V> map = DefaultedMap.defaultedMap(base, new Transformer<K, V>() {
-            @Override
-            public V transform(final K input) {
-                if (input instanceof String) {
-                    return (V) "NULL";
-                }
-                return (V) "NULL_OBJECT";
+        final Map<K, V> map = DefaultedMap.defaultedMap(base, (Transformer<K, V>) input -> {
+            if (input instanceof String) {
+                return (V) "NULL";
             }
+            return (V) "NULL_OBJECT";
         });
 
         assertEquals(0, map.size());
diff --git a/src/test/java/org/apache/commons/collections4/map/LazyMapTest.java b/src/test/java/org/apache/commons/collections4/map/LazyMapTest.java
index c86698e..ff49762 100644
--- a/src/test/java/org/apache/commons/collections4/map/LazyMapTest.java
+++ b/src/test/java/org/apache/commons/collections4/map/LazyMapTest.java
@@ -72,12 +72,7 @@ public class LazyMapTest<K, V> extends AbstractIterableMapTest<K, V> {
 
     @Test
     public void mapGetWithTransformer() {
-        final Transformer<Number, Integer> intConverter = new Transformer<Number, Integer>(){
-            @Override
-            public Integer transform(final Number input) {
-                return input.intValue();
-            }
-        };
+        final Transformer<Number, Integer> intConverter = input -> input.intValue();
         final Map<Long, Number> map = lazyMap(new HashMap<Long,Number>(), intConverter );
         assertEquals(0, map.size());
         final Number i1 = map.get(123L);
diff --git a/src/test/java/org/apache/commons/collections4/map/PredicatedMapTest.java b/src/test/java/org/apache/commons/collections4/map/PredicatedMapTest.java
index 1bd66b6..b9f52b2 100644
--- a/src/test/java/org/apache/commons/collections4/map/PredicatedMapTest.java
+++ b/src/test/java/org/apache/commons/collections4/map/PredicatedMapTest.java
@@ -34,12 +34,7 @@ public class PredicatedMapTest<K, V> extends AbstractIterableMapTest<K, V> {
 
     protected static final Predicate<Object> truePredicate = TruePredicate.<Object>truePredicate();
 
-    protected static final Predicate<Object> testPredicate = new Predicate<Object>() {
-        @Override
-        public boolean evaluate(final Object o) {
-            return o instanceof String;
-        }
-    };
+    protected static final Predicate<Object> testPredicate = o -> o instanceof String;
 
     public PredicatedMapTest(final String testName) {
         super(testName);
diff --git a/src/test/java/org/apache/commons/collections4/map/PredicatedSortedMapTest.java b/src/test/java/org/apache/commons/collections4/map/PredicatedSortedMapTest.java
index b2f6ef2..2758131 100644
--- a/src/test/java/org/apache/commons/collections4/map/PredicatedSortedMapTest.java
+++ b/src/test/java/org/apache/commons/collections4/map/PredicatedSortedMapTest.java
@@ -36,12 +36,7 @@ public class PredicatedSortedMapTest<K, V> extends AbstractSortedMapTest<K, V> {
 
     protected static final Predicate<Object> truePredicate = TruePredicate.truePredicate();
 
-    protected static final Predicate<Object> testPredicate = new Predicate<Object>() {
-        @Override
-        public boolean evaluate(final Object o) {
-            return o instanceof String;
-        }
-    };
+    protected static final Predicate<Object> testPredicate = o -> o instanceof String;
 
     public PredicatedSortedMapTest(final String testName) {
         super(testName);
diff --git a/src/test/java/org/apache/commons/collections4/multiset/PredicatedMultiSetTest.java b/src/test/java/org/apache/commons/collections4/multiset/PredicatedMultiSetTest.java
index fa36ad5..1de9be5 100644
--- a/src/test/java/org/apache/commons/collections4/multiset/PredicatedMultiSetTest.java
+++ b/src/test/java/org/apache/commons/collections4/multiset/PredicatedMultiSetTest.java
@@ -44,12 +44,7 @@ public class PredicatedMultiSetTest<T> extends AbstractMultiSetTest<T> {
     //--------------------------------------------------------------------------
 
     protected Predicate<T> stringPredicate() {
-        return new Predicate<T>() {
-            @Override
-            public boolean evaluate(final T o) {
-                return o instanceof String;
-            }
-        };
+        return o -> o instanceof String;
     }
 
     protected Predicate<T> truePredicate = TruePredicate.<T>truePredicate();
diff --git a/src/test/java/org/apache/commons/collections4/queue/PredicatedQueueTest.java b/src/test/java/org/apache/commons/collections4/queue/PredicatedQueueTest.java
index 4e90b76..a78c0d8 100644
--- a/src/test/java/org/apache/commons/collections4/queue/PredicatedQueueTest.java
+++ b/src/test/java/org/apache/commons/collections4/queue/PredicatedQueueTest.java
@@ -73,12 +73,7 @@ public class PredicatedQueueTest<E> extends AbstractQueueTest<E> {
     //------------------------------------------------------------
 
     protected Predicate<E> testPredicate =
-            new Predicate<E>() {
-                @Override
-                public boolean evaluate(final E o) {
-                    return o instanceof String;
-                }
-            };
+            o -> o instanceof String;
 
     public Queue<E> makeTestQueue() {
         return decorateCollection(new LinkedList<E>(), testPredicate);
diff --git a/src/test/java/org/apache/commons/collections4/set/PredicatedNavigableSetTest.java b/src/test/java/org/apache/commons/collections4/set/PredicatedNavigableSetTest.java
index 57333f4..74c6160 100644
--- a/src/test/java/org/apache/commons/collections4/set/PredicatedNavigableSetTest.java
+++ b/src/test/java/org/apache/commons/collections4/set/PredicatedNavigableSetTest.java
@@ -62,12 +62,7 @@ public class PredicatedNavigableSetTest<E> extends AbstractNavigableSetTest<E> {
 
 //--------------------------------------------------------------------
     protected Predicate<E> testPredicate =
-        new Predicate<E>() {
-            @Override
-            public boolean evaluate(final E o) {
-                return o instanceof String && ((String) o).startsWith("A");
-            }
-        };
+        o -> o instanceof String && ((String) o).startsWith("A");
 
     protected PredicatedNavigableSet<E> makeTestSet() {
         return PredicatedNavigableSet.predicatedNavigableSet(new TreeSet<E>(), testPredicate);
diff --git a/src/test/java/org/apache/commons/collections4/set/PredicatedSetTest.java b/src/test/java/org/apache/commons/collections4/set/PredicatedSetTest.java
index 834fc38..5cc6544 100644
--- a/src/test/java/org/apache/commons/collections4/set/PredicatedSetTest.java
+++ b/src/test/java/org/apache/commons/collections4/set/PredicatedSetTest.java
@@ -56,12 +56,7 @@ public class PredicatedSetTest<E> extends AbstractSetTest<E> {
 //--------------------------------------------------------------------
 
     protected Predicate<E> testPredicate =
-        new Predicate<E>() {
-            @Override
-            public boolean evaluate(final E o) {
-                return o instanceof String;
-            }
-        };
+        o -> o instanceof String;
 
     protected PredicatedSet<E> makeTestSet() {
         return decorateSet(new HashSet<E>(), testPredicate);
diff --git a/src/test/java/org/apache/commons/collections4/set/PredicatedSortedSetTest.java b/src/test/java/org/apache/commons/collections4/set/PredicatedSortedSetTest.java
index 7d3022e..ee49031 100644
--- a/src/test/java/org/apache/commons/collections4/set/PredicatedSortedSetTest.java
+++ b/src/test/java/org/apache/commons/collections4/set/PredicatedSortedSetTest.java
@@ -62,12 +62,7 @@ public class PredicatedSortedSetTest<E> extends AbstractSortedSetTest<E> {
 
 //--------------------------------------------------------------------
     protected Predicate<E> testPredicate =
-        new Predicate<E>() {
-            @Override
-            public boolean evaluate(final E o) {
-                return o instanceof String && ((String) o).startsWith("A");
-            }
-        };
+        o -> o instanceof String && ((String) o).startsWith("A");
 
     protected PredicatedSortedSet<E> makeTestSet() {
         return PredicatedSortedSet.predicatedSortedSet(new TreeSet<E>(), testPredicate);
diff --git a/src/test/java/org/apache/commons/collections4/splitmap/TransformedSplitMapTest.java b/src/test/java/org/apache/commons/collections4/splitmap/TransformedSplitMapTest.java
index 22504cd..a1a2556 100644
--- a/src/test/java/org/apache/commons/collections4/splitmap/TransformedSplitMapTest.java
+++ b/src/test/java/org/apache/commons/collections4/splitmap/TransformedSplitMapTest.java
@@ -35,26 +35,11 @@ import org.apache.commons.collections4.functors.NOPTransformer;
 @SuppressWarnings("boxing")
 public class TransformedSplitMapTest extends BulkTest {
 
-    private final Transformer<Integer, String> intToString = new Transformer<Integer, String>() {
-        @Override
-        public String transform(final Integer input) {
-            return String.valueOf(input);
-        }
-    };
+    private final Transformer<Integer, String> intToString = input -> String.valueOf(input);
 
-    private final Transformer<Object, Class<?>> objectToClass = new Transformer<Object, Class<?>>() {
-        @Override
-        public java.lang.Class<?> transform(final Object input) {
-            return input == null ? null : input.getClass();
-        }
-    };
+    private final Transformer<Object, Class<?>> objectToClass = input -> input == null ? null : input.getClass();
 
-    private final Transformer<String, Integer> stringToInt = new Transformer<String, Integer>() {
-        @Override
-        public Integer transform(final String input) {
-            return Integer.valueOf(input);
-        }
-    };
+    private final Transformer<String, Integer> stringToInt = input -> Integer.valueOf(input);
 
     public TransformedSplitMapTest(final String testName) {
         super(testName);