mirror of
https://github.com/apache/commons-collections.git
synced 2025-03-01 22:39:08 +00:00
Add exists() to test if any one element in the collection matches the predicate
from Peter KoBek git-svn-id: https://svn.apache.org/repos/asf/jakarta/commons/proper/collections/trunk@130963 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
075ed28c88
commit
a164d04789
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/java/org/apache/commons/collections/CollectionUtils.java,v 1.27 2003/01/25 11:29:37 scolebourne Exp $
|
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/java/org/apache/commons/collections/CollectionUtils.java,v 1.28 2003/01/25 11:40:26 scolebourne Exp $
|
||||||
* ====================================================================
|
* ====================================================================
|
||||||
*
|
*
|
||||||
* The Apache Software License, Version 1.1
|
* The Apache Software License, Version 1.1
|
||||||
@ -77,7 +77,7 @@ import org.apache.commons.collections.iterators.EnumerationIterator;
|
|||||||
* A set of {@link Collection} related utility methods.
|
* A set of {@link Collection} related utility methods.
|
||||||
*
|
*
|
||||||
* @since Commons Collections 1.0
|
* @since Commons Collections 1.0
|
||||||
* @version $Revision: 1.27 $ $Date: 2003/01/25 11:29:37 $
|
* @version $Revision: 1.28 $ $Date: 2003/01/25 11:40:26 $
|
||||||
*
|
*
|
||||||
* @author Rodney Waldhoff
|
* @author Rodney Waldhoff
|
||||||
* @author Paul Jack
|
* @author Paul Jack
|
||||||
@ -449,6 +449,26 @@ public class CollectionUtils {
|
|||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Answers true if a predicate is true for at least one element of a collection.
|
||||||
|
* <p>
|
||||||
|
* A <code>null</code> collection or predicate returns false.
|
||||||
|
*
|
||||||
|
* @param collection the collection to get the input from, may be null
|
||||||
|
* @param predicate the predicate to use, may be null
|
||||||
|
* @return true if at least one element of the collection matches the predicate
|
||||||
|
*/
|
||||||
|
public static boolean exists(Collection collection, Predicate predicate) {
|
||||||
|
if (collection != null && predicate != null) {
|
||||||
|
for (Iterator it = collection.iterator(); it.hasNext();) {
|
||||||
|
if (predicate.evaluate(it.next())) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Selects all elements from input collection which match the given predicate
|
* Selects all elements from input collection which match the given predicate
|
||||||
* into an output collection.
|
* into an output collection.
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* $Id: TestCollectionUtils.java,v 1.11 2003/01/25 11:31:12 scolebourne Exp $
|
* $Id: TestCollectionUtils.java,v 1.12 2003/01/25 11:40:26 scolebourne Exp $
|
||||||
* $Revision: 1.11 $
|
* $Revision: 1.12 $
|
||||||
* $Date: 2003/01/25 11:31:12 $
|
* $Date: 2003/01/25 11:40:26 $
|
||||||
*
|
*
|
||||||
* ====================================================================
|
* ====================================================================
|
||||||
*
|
*
|
||||||
@ -66,7 +66,7 @@ import java.util.*;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Rodney Waldhoff
|
* @author Rodney Waldhoff
|
||||||
* @version $Revision: 1.11 $ $Date: 2003/01/25 11:31:12 $
|
* @version $Revision: 1.12 $ $Date: 2003/01/25 11:40:26 $
|
||||||
*/
|
*/
|
||||||
public class TestCollectionUtils extends TestCase {
|
public class TestCollectionUtils extends TestCase {
|
||||||
public TestCollectionUtils(String testName) {
|
public TestCollectionUtils(String testName) {
|
||||||
@ -459,6 +459,21 @@ public class TestCollectionUtils extends TestCase {
|
|||||||
assertEquals(0, CollectionUtils.countMatches(null, null));
|
assertEquals(0, CollectionUtils.countMatches(null, null));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void testExists() {
|
||||||
|
List list = new ArrayList();
|
||||||
|
assertEquals(false, CollectionUtils.exists(null, null));
|
||||||
|
assertEquals(false, CollectionUtils.exists(list, null));
|
||||||
|
assertEquals(false, CollectionUtils.exists(null, EQUALS_TWO));
|
||||||
|
assertEquals(false, CollectionUtils.exists(list, EQUALS_TWO));
|
||||||
|
list.add("One");
|
||||||
|
list.add("Three");
|
||||||
|
list.add("Four");
|
||||||
|
assertEquals(false, CollectionUtils.exists(list, EQUALS_TWO));
|
||||||
|
|
||||||
|
list.add("Two");
|
||||||
|
assertEquals(true, CollectionUtils.exists(list, EQUALS_TWO));
|
||||||
|
}
|
||||||
|
|
||||||
public void testSelect() {
|
public void testSelect() {
|
||||||
List list = new ArrayList();
|
List list = new ArrayList();
|
||||||
list.add("One");
|
list.add("One");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user