- All Superinterfaces:
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface @GwtCompatible public interface Predicate<T extends @Nullable Object> extends Predicate<T>Legacy version of
java.util.function.Predicate. Determines a true or false value for a given input.
As this interface extends
java.util.function.Predicate, an instance of this type may be used as a
Predicatedirectly. To use a
com.google.common.base.Predicateis expected, use the method reference
This interface is now a legacy type. Use
java.util.function.Predicate(or the appropriate primitive specialization such as
IntPredicate) instead whenever possible. Otherwise, at least reduce explicit dependencies on this type by using lambda expressions or method references instead of classes, leaving your code easier to migrate in the future.
Predicatesclass provides common predicates and related utilities.
See the Guava User Guide article on the use of
- Kevin Bourrillion
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description
apply(T input)Returns the result of applying this predicate to
input(Java 8 users, see notes in the class documentation above).
equals(Object object)Indicates whether another object is equal to this predicate.
test(T input)Evaluates this predicate on the given argument.
@CanIgnoreReturnValue boolean apply(T input)Returns the result of applying this predicate to
input(Java 8 users, see notes in the class documentation above). This method is generally expected, but not absolutely required, to have the following properties:
- Its execution does not cause any observable side effects.
- The computation is consistent with equals; that is,
(a, b)implies that
predicate.apply(a) == predicate.apply(b)).
inputis null and this predicate does not accept null arguments
boolean equals(@CheckForNull Object object)Indicates whether another object is equal to this predicate.
Most implementations will have no reason to override the behavior of
Object.equals(java.lang.Object). However, an implementation may also choose to return
Predicatethat it considers interchangeable with this one. "Interchangeable" typically means that
this.apply(t) == that.apply(t)for all
T). Note that a
falseresult from this method does not imply that the predicates are known not to be interchangeable.
testDescription copied from interface:
java.util.function.PredicateEvaluates this predicate on the given argument.