Interface Predicate<T extends @Nullable Object>

All Superinterfaces:
Predicate<T>
All Known Implementing Classes:
BloomFilter, CharMatcher, Range
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 Predicate directly. To use a java.util.function.Predicate where a com.google.common.base.Predicate is expected, use the method reference predicate::test.

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.

The Predicates class provides common predicates and related utilities.

See the Guava User Guide article on the use of Predicate.

Since:
2.0
Author:
Kevin Bourrillion
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    apply(T input)
    Returns the result of applying this predicate to input (Java 8+ users, see notes in the class documentation above).
    boolean
    Indicates whether another object is equal to this predicate.
    default boolean
    test(T input)
     

    Methods inherited from interface java.util.function.Predicate

    and, negate, or
  • Method Details

    • apply

      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, Objects.equal(a, b) implies that predicate.apply(a) == predicate.apply(b)).
      Throws:
      NullPointerException - if input is null and this predicate does not accept null arguments
    • equals

      boolean equals(@Nullable Object obj)
      Indicates whether another object is equal to this predicate.

      Warning: do not depend on the behavior of this method.

      Historically, Predicate instances in this library have implemented this method to recognize certain cases where distinct Predicate instances would in fact behave identically. However, as code migrates to java.util.function, that behavior will disappear. It is best not to depend on it.

      Overrides:
      equals in class Object
    • test

      default boolean test(T input)
      Specified by:
      test in interface Predicate<T extends @Nullable Object>