[COLLECTIONS-362] changed filter return value to boolean.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/collections/trunk@1125466 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
501b94143a
commit
07947bd69e
|
@ -454,20 +454,24 @@ public class CollectionUtils {
|
|||
* predicate returns false, remove the element.
|
||||
* <p>
|
||||
* If the input collection or predicate is null, there is no change made.
|
||||
*
|
||||
*
|
||||
* @param collection
|
||||
* the collection to get the input from, may be null
|
||||
* @param predicate
|
||||
* the predicate to use as a filter, may be null
|
||||
* @return true if the collection is modified by this call, false otherwise.
|
||||
*/
|
||||
public static <T> void filter(Iterable<T> collection, Predicate<? super T> predicate) {
|
||||
public static <T> boolean filter(Iterable<T> collection, Predicate<? super T> predicate) {
|
||||
boolean result = false;
|
||||
if (collection != null && predicate != null) {
|
||||
for (Iterator<T> it = collection.iterator(); it.hasNext();) {
|
||||
if (!predicate.evaluate(it.next())) {
|
||||
it.remove();
|
||||
result = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -20,8 +20,8 @@ import static junit.framework.Assert.assertFalse;
|
|||
import static org.apache.commons.collections.functors.EqualPredicate.equalPredicate;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.assertSame;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
import java.util.*;
|
||||
|
@ -873,7 +873,7 @@ public class TestCollectionUtils extends MockTestCase {
|
|||
ints.add(3);
|
||||
ints.add(3);
|
||||
Iterable<Integer> iterable = ints;
|
||||
CollectionUtils.filter(iterable, EQUALS_TWO);
|
||||
assertTrue(CollectionUtils.filter(iterable, EQUALS_TWO));
|
||||
assertEquals(1, (int) ints.size());
|
||||
assertEquals(2, (int) ints.get(0));
|
||||
}
|
||||
|
@ -881,11 +881,11 @@ public class TestCollectionUtils extends MockTestCase {
|
|||
@Test
|
||||
public void filterNullParameters() throws Exception {
|
||||
List<Long> longs = Collections.nCopies(4, 10L);
|
||||
CollectionUtils.filter(longs, null);
|
||||
assertFalse(CollectionUtils.filter(longs, null));
|
||||
assertEquals(4, longs.size());
|
||||
CollectionUtils.filter(null, EQUALS_TWO);
|
||||
assertFalse(CollectionUtils.filter(null, EQUALS_TWO));
|
||||
assertEquals(4, longs.size());
|
||||
CollectionUtils.filter(null, null);
|
||||
assertFalse(CollectionUtils.filter(null, null));
|
||||
assertEquals(4, longs.size());
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue