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
The following commit(s) were added to refs/heads/master by this push: new 29d79003e Use for-each loop 29d79003e is described below commit 29d79003ea73528796bed63bf81b1cc508b1f215 Author: Gary Gregory <garydgreg...@gmail.com> AuthorDate: Sat Jul 9 10:09:02 2022 -0400 Use for-each loop --- .../org/apache/commons/collections4/ListUtils.java | 4 +--- .../org/apache/commons/collections4/MapUtils.java | 11 +++------ .../commons/collections4/bag/AbstractMapBag.java | 26 +++++++--------------- .../commons/collections4/bag/CollectionBag.java | 17 ++++---------- .../collections4/bag/CollectionSortedBag.java | 17 ++++---------- .../collections4/bidimap/AbstractDualBidiMap.java | 5 ++--- .../collection/CompositeCollection.java | 4 +--- .../commons/collections4/map/PredicatedMap.java | 8 +------ .../collections4/multiset/AbstractMultiSet.java | 4 +--- .../commons/collections4/set/CompositeSet.java | 4 +--- 10 files changed, 26 insertions(+), 74 deletions(-) diff --git a/src/main/java/org/apache/commons/collections4/ListUtils.java b/src/main/java/org/apache/commons/collections4/ListUtils.java index 2e94515a6..8e95711fb 100644 --- a/src/main/java/org/apache/commons/collections4/ListUtils.java +++ b/src/main/java/org/apache/commons/collections4/ListUtils.java @@ -221,10 +221,8 @@ public class ListUtils { return 0; } int hashCode = 1; - final Iterator<?> it = list.iterator(); - while (it.hasNext()) { - final Object obj = it.next(); + for (final Object obj : list) { hashCode = 31 * hashCode + (obj == null ? 0 : obj.hashCode()); } return hashCode; diff --git a/src/main/java/org/apache/commons/collections4/MapUtils.java b/src/main/java/org/apache/commons/collections4/MapUtils.java index 5318c2eac..1f4554045 100644 --- a/src/main/java/org/apache/commons/collections4/MapUtils.java +++ b/src/main/java/org/apache/commons/collections4/MapUtils.java @@ -25,10 +25,9 @@ import java.util.Collections; import java.util.Deque; import java.util.Enumeration; import java.util.HashMap; -import java.util.Iterator; import java.util.Map; -import java.util.Objects; import java.util.Map.Entry; +import java.util.Objects; import java.util.Properties; import java.util.ResourceBundle; import java.util.SortedMap; @@ -1497,9 +1496,7 @@ public class MapUtils { */ public static <K, V, E> void populateMap(final Map<K, V> map, final Iterable<? extends E> elements, final Transformer<E, K> keyTransformer, final Transformer<E, V> valueTransformer) { - final Iterator<? extends E> iter = elements.iterator(); - while (iter.hasNext()) { - final E temp = iter.next(); + for (final E temp : elements) { map.put(keyTransformer.transform(temp), valueTransformer.transform(temp)); } } @@ -1534,9 +1531,7 @@ public class MapUtils { */ public static <K, V, E> void populateMap(final MultiMap<K, V> map, final Iterable<? extends E> elements, final Transformer<E, K> keyTransformer, final Transformer<E, V> valueTransformer) { - final Iterator<? extends E> iter = elements.iterator(); - while (iter.hasNext()) { - final E temp = iter.next(); + for (final E temp : elements) { map.put(keyTransformer.transform(temp), valueTransformer.transform(temp)); } } diff --git a/src/main/java/org/apache/commons/collections4/bag/AbstractMapBag.java b/src/main/java/org/apache/commons/collections4/bag/AbstractMapBag.java index b869837ca..ef0f7bdbe 100644 --- a/src/main/java/org/apache/commons/collections4/bag/AbstractMapBag.java +++ b/src/main/java/org/apache/commons/collections4/bag/AbstractMapBag.java @@ -150,9 +150,7 @@ public abstract class AbstractMapBag<E> implements Bag<E> { * @return {@code true} if the Bag contains all the collection */ boolean containsAll(final Bag<?> other) { - final Iterator<?> it = other.uniqueSet().iterator(); - while (it.hasNext()) { - final Object current = it.next(); + for (Object current : other.uniqueSet()) { if (getCount(current) < other.getCount(current)) { return false; } @@ -278,9 +276,8 @@ public abstract class AbstractMapBag<E> implements Bag<E> { @Override public boolean addAll(final Collection<? extends E> coll) { boolean changed = false; - final Iterator<? extends E> i = coll.iterator(); - while (i.hasNext()) { - final boolean added = add(i.next()); + for (final E current : coll) { + final boolean added = add(current); changed = changed || added; } return changed; @@ -352,9 +349,8 @@ public abstract class AbstractMapBag<E> implements Bag<E> { public boolean removeAll(final Collection<?> coll) { boolean result = false; if (coll != null) { - final Iterator<?> i = coll.iterator(); - while (i.hasNext()) { - final boolean changed = remove(i.next(), 1); + for (final Object current : coll) { + final boolean changed = remove(current, 1); result = result || changed; } } @@ -387,9 +383,7 @@ public abstract class AbstractMapBag<E> implements Bag<E> { boolean retainAll(final Bag<?> other) { boolean result = false; final Bag<E> excess = new HashBag<>(); - final Iterator<E> i = uniqueSet().iterator(); - while (i.hasNext()) { - final E current = i.next(); + for (final E current : uniqueSet()) { final int myCount = getCount(current); final int otherCount = other.getCount(current); if (1 <= otherCount && otherCount <= myCount) { @@ -442,9 +436,7 @@ public abstract class AbstractMapBag<E> implements Bag<E> { public Object[] toArray() { final Object[] result = new Object[size()]; int i = 0; - final Iterator<E> it = map.keySet().iterator(); - while (it.hasNext()) { - final E current = it.next(); + for (final E current : map.keySet()) { for (int index = getCount(current); index > 0; index--) { result[i++] = current; } @@ -474,9 +466,7 @@ public abstract class AbstractMapBag<E> implements Bag<E> { } int i = 0; - final Iterator<E> it = map.keySet().iterator(); - while (it.hasNext()) { - final E current = it.next(); + for (final E current : map.keySet()) { for (int index = getCount(current); index > 0; index--) { // unsafe, will throw ArrayStoreException if types are not compatible, see javadoc @SuppressWarnings("unchecked") diff --git a/src/main/java/org/apache/commons/collections4/bag/CollectionBag.java b/src/main/java/org/apache/commons/collections4/bag/CollectionBag.java index 9c325cb0c..560cc134f 100644 --- a/src/main/java/org/apache/commons/collections4/bag/CollectionBag.java +++ b/src/main/java/org/apache/commons/collections4/bag/CollectionBag.java @@ -105,13 +105,7 @@ public final class CollectionBag<E> extends AbstractBagDecorator<E> { */ @Override public boolean containsAll(final Collection<?> coll) { - final Iterator<?> e = coll.iterator(); - while (e.hasNext()) { - if (!contains(e.next())) { - return false; - } - } - return true; + return coll.stream().allMatch(this::contains); } /** @@ -132,9 +126,8 @@ public final class CollectionBag<E> extends AbstractBagDecorator<E> { @Override public boolean addAll(final Collection<? extends E> coll) { boolean changed = false; - final Iterator<? extends E> i = coll.iterator(); - while (i.hasNext()) { - final boolean added = add(i.next(), 1); + for (final E current : coll) { + final boolean added = add(current, 1); changed = changed || added; } return changed; @@ -168,9 +161,7 @@ public final class CollectionBag<E> extends AbstractBagDecorator<E> { public boolean removeAll(final Collection<?> coll) { if (coll != null) { boolean result = false; - final Iterator<?> i = coll.iterator(); - while (i.hasNext()) { - final Object obj = i.next(); + for (final Object obj : coll) { final boolean changed = remove(obj, getCount(obj)); result = result || changed; } diff --git a/src/main/java/org/apache/commons/collections4/bag/CollectionSortedBag.java b/src/main/java/org/apache/commons/collections4/bag/CollectionSortedBag.java index 3601e324d..917f8af67 100644 --- a/src/main/java/org/apache/commons/collections4/bag/CollectionSortedBag.java +++ b/src/main/java/org/apache/commons/collections4/bag/CollectionSortedBag.java @@ -86,13 +86,7 @@ public final class CollectionSortedBag<E> extends AbstractSortedBagDecorator<E> @Override public boolean containsAll(final Collection<?> coll) { - final Iterator<?> e = coll.iterator(); - while (e.hasNext()) { - if (!contains(e.next())) { - return false; - } - } - return true; + return coll.stream().allMatch(this::contains); } @Override @@ -103,9 +97,8 @@ public final class CollectionSortedBag<E> extends AbstractSortedBagDecorator<E> @Override public boolean addAll(final Collection<? extends E> coll) { boolean changed = false; - final Iterator<? extends E> i = coll.iterator(); - while (i.hasNext()) { - final boolean added = add(i.next(), 1); + for (final E current : coll) { + final boolean added = add(current, 1); changed = changed || added; } return changed; @@ -120,9 +113,7 @@ public final class CollectionSortedBag<E> extends AbstractSortedBagDecorator<E> public boolean removeAll(final Collection<?> coll) { if (coll != null) { boolean result = false; - final Iterator<?> i = coll.iterator(); - while (i.hasNext()) { - final Object obj = i.next(); + for (final Object obj : coll) { final boolean changed = remove(obj, getCount(obj)); result = result || changed; } diff --git a/src/main/java/org/apache/commons/collections4/bidimap/AbstractDualBidiMap.java b/src/main/java/org/apache/commons/collections4/bidimap/AbstractDualBidiMap.java index b8060574c..e0d400b46 100644 --- a/src/main/java/org/apache/commons/collections4/bidimap/AbstractDualBidiMap.java +++ b/src/main/java/org/apache/commons/collections4/bidimap/AbstractDualBidiMap.java @@ -389,9 +389,8 @@ public abstract class AbstractDualBidiMap<K, V> implements BidiMap<K, V> { return false; } boolean modified = false; - final Iterator<?> it = coll.iterator(); - while (it.hasNext()) { - modified |= remove(it.next()); + for (final Object current : coll) { + modified |= remove(current); } return modified; } diff --git a/src/main/java/org/apache/commons/collections4/collection/CompositeCollection.java b/src/main/java/org/apache/commons/collections4/collection/CompositeCollection.java index 1707dd780..fb06720e9 100644 --- a/src/main/java/org/apache/commons/collections4/collection/CompositeCollection.java +++ b/src/main/java/org/apache/commons/collections4/collection/CompositeCollection.java @@ -153,9 +153,7 @@ public class CompositeCollection<E> implements Collection<E>, Serializable { return EmptyIterator.<E>emptyIterator(); } final IteratorChain<E> chain = new IteratorChain<>(); - for (final Collection<E> item : all) { - chain.addIterator(item.iterator()); - } + all.forEach(item -> chain.addIterator(item.iterator())); return chain; } diff --git a/src/main/java/org/apache/commons/collections4/map/PredicatedMap.java b/src/main/java/org/apache/commons/collections4/map/PredicatedMap.java index bef80d8ff..8403b7ae7 100644 --- a/src/main/java/org/apache/commons/collections4/map/PredicatedMap.java +++ b/src/main/java/org/apache/commons/collections4/map/PredicatedMap.java @@ -20,7 +20,6 @@ import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.Serializable; -import java.util.Iterator; import java.util.Map; import org.apache.commons.collections4.Predicate; @@ -99,12 +98,7 @@ public class PredicatedMap<K, V> super(map); this.keyPredicate = keyPredicate; this.valuePredicate = valuePredicate; - - final Iterator<Map.Entry<K, V>> it = map.entrySet().iterator(); - while (it.hasNext()) { - final Map.Entry<K, V> entry = it.next(); - validate(entry.getKey(), entry.getValue()); - } + map.forEach(this::validate); } /** 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 fc7babb60..40c8629ad 100644 --- a/src/main/java/org/apache/commons/collections4/multiset/AbstractMultiSet.java +++ b/src/main/java/org/apache/commons/collections4/multiset/AbstractMultiSet.java @@ -211,9 +211,7 @@ public abstract class AbstractMultiSet<E> extends AbstractCollection<E> implemen @Override public boolean removeAll(final Collection<?> coll) { boolean result = false; - final Iterator<?> i = coll.iterator(); - while (i.hasNext()) { - final Object obj = i.next(); + for (final Object obj : coll) { final boolean changed = remove(obj, getCount(obj)) != 0; result = result || changed; } diff --git a/src/main/java/org/apache/commons/collections4/set/CompositeSet.java b/src/main/java/org/apache/commons/collections4/set/CompositeSet.java index 25df97e13..1fa72dc8b 100644 --- a/src/main/java/org/apache/commons/collections4/set/CompositeSet.java +++ b/src/main/java/org/apache/commons/collections4/set/CompositeSet.java @@ -152,9 +152,7 @@ public class CompositeSet<E> implements Set<E>, Serializable { return EmptyIterator.<E>emptyIterator(); } final IteratorChain<E> chain = new IteratorChain<>(); - for (final Set<E> item : all) { - chain.addIterator(item.iterator()); - } + all.forEach(item -> chain.addIterator(item.iterator())); return chain; }