I want to filter a java.util.Collection based on a predicate.
java.util.Collection
Use Collection Query Engine (CQEngine). It is by far the fastest way to do this.
See also: How do you query object collections in Java (Criteria/SQL-like)?