Interface Predicate<T>

  • All Superinterfaces:
    <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.

    @GwtCompatible
    public interface Predicate<T>
    extends <T>
    Legacy version of . 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 .

    Since:
    2.0
    Author:
    Kevin Bourrillion
    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      boolean T input)
      Returns the result of applying this predicate to input (Java 8 users, see notes in the class documentation above).
      boolean  object)
      Indicates whether another object is equal to this predicate.
      default boolean T input)
      Evaluates this predicate on the given argument.
      • Methods inherited from interface java.util.function.

        , ,
    • Method Detail

      • apply

        boolean  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:
        - if input is null and this predicate does not accept null arguments
      • equals

        boolean   object)
        Indicates whether another object is equal to this predicate.

        Most implementations will have no reason to override the behavior of . However, an implementation may also choose to return true whenever object is a Predicate that it considers interchangeable with this one. "Interchangeable" typically means that this.apply(t) == that.apply(t) for all t of type T). Note that a false result from this method does not imply that the predicates are known not to be interchangeable.

        Overrides:
         in class 
        Parameters:
        object - the reference object with which to compare.
        Returns:
        true if this object is the same as the obj argument; false otherwise.
        See Also:
        ,
      • test

        default boolean  T input)
        Description copied from interface: 
        Evaluates this predicate on the given argument.
        Specified by:
         in interface <T>
        Parameters:
        input - the input argument
        Returns:
        true if the input argument matches the predicate, otherwise false