Java: Интерфейс Predicate
Predicate - это встроенный функциональный интерфейс, добавленный в Java SE 8 в пакет java.util.function.
Принимает на вход значение, проверяет состояние и возвращает boolean
значение в качестве результата.
Predicate
подтверждает какое-то значение как true
или false
.
Описание интерфейса Predicate:
@FunctionalInterface
public interface Predicate<T> {
boolean test(T t);
}
Функциональный дескриптор интерфейса:
T -> boolean
Рассмотрим пример использования интерфейса Predicate
для нахождения отрицательных чисел:
import java.util.function.Predicate;
public class PredicateExample1 {
public static void main(String[] args) {
Predicate<Integer> negative = i -> i < 0;
System.out.println(negative.test(-6));
System.out.println(negative.test(6));
System.out.println(negative.test(0));
}
}
Predicate
интерфейс содержит методы по умолчанию:
default Predicate<T> and(Predicate<? super T> other);
default Predicate<T> or(Predicate<? super T> other);
default Predicate<T> negate();
Следующий пример демонстрирует использование метода and() интерфейса Predicate
:
import java.util.function.Predicate;
public class PredicateExample2 {
public static void main(String[] args) {
Predicate<String> containsA = t -> t.contains("A");
Predicate<String> containsB = t -> t.contains("B");
System.out.println(containsA.and(containsB).test("ABCD"));
}
}
Please log in or register to have a possibility to add comment.