added in API level 24

Predicate

public interface Predicate

java.util.function.Predicate<T>


Represents a predicate (boolean-valued function) of one argument.

This is a functional interface whose functional method is test(Object).

Summary

Public methods

default Predicate<T> and(Predicate<? super T> other)

Returns a composed predicate that represents a short-circuiting logical AND of this predicate and another.

static <T> Predicate<T> isEqual(Object targetRef)

Returns a predicate that tests if two arguments are equal according to equals(Object, Object).

default Predicate<T> negate()

Returns a predicate that represents the logical negation of this predicate.

default Predicate<T> or(Predicate<? super T> other)

Returns a composed predicate that represents a short-circuiting logical OR of this predicate and another.

abstract boolean test(T t)

Evaluates this predicate on the given argument.

Public methods

and

added in API level 24
Predicate<T> and (Predicate<? super T> other)

Returns a composed predicate that represents a short-circuiting logical AND of this predicate and another. When evaluating the composed predicate, if this predicate is false, then the other predicate is not evaluated.

Any exceptions thrown during evaluation of either predicate are relayed to the caller; if evaluation of this predicate throws an exception, the other predicate will not be evaluated.

Parameters
other Predicate: a predicate that will be logically-ANDed with this predicate

Returns
Predicate<T> a composed predicate that represents the short-circuiting logical AND of this predicate and the other predicate

Throws
NullPointerException if other is null

isEqual

added in API level 24
Predicate<T> isEqual (Object targetRef)

Returns a predicate that tests if two arguments are equal according to equals(Object, Object).

Parameters
targetRef Object: the object reference with which to compare for equality, which may be null

Returns
Predicate<T> a predicate that tests if two arguments are equal according to equals(Object, Object)

negate

added in API level 24
Predicate<T> negate ()

Returns a predicate that represents the logical negation of this predicate.

Returns
Predicate<T> a predicate that represents the logical negation of this predicate

or

added in API level 24
Predicate<T> or (Predicate<? super T> other)

Returns a composed predicate that represents a short-circuiting logical OR of this predicate and another. When evaluating the composed predicate, if this predicate is true, then the other predicate is not evaluated.

Any exceptions thrown during evaluation of either predicate are relayed to the caller; if evaluation of this predicate throws an exception, the other predicate will not be evaluated.

Parameters
other Predicate: a predicate that will be logically-ORed with this predicate

Returns
Predicate<T> a composed predicate that represents the short-circuiting logical OR of this predicate and the other predicate

Throws
NullPointerException if other is null

test

added in API level 24
boolean test (T t)

Evaluates this predicate on the given argument.

Parameters
t T: the input argument

Returns
boolean true if the input argument matches the predicate, otherwise false