logo

Предикатен интерфейс на Java

Това е функционален интерфейс, който представлява предикат (функция с булева стойност) на един аргумент. Той е дефиниран в пакета java.util.function и съдържа test() функционален метод.

Java Предикатни интерфейсни методи

Методи Описание
булев тест (T t) Той оценява този предикат по даден аргумент.
предикат по подразбиране и (предикат друг) Той връща съставен предикат, който представлява късо свързващо логическо И на този предикат и друг. Когато се оценява съставеният предикат, ако този предикат е неверен, тогава другият предикат не се оценява.
предикат по подразбиране negative() Връща предикат, който представлява логическото отрицание на този предикат.
предикат по подразбиране или (предикат друг) Той връща съставен предикат, който представлява късо свързващо логическо ИЛИ на този предикат и друг. Когато се оценява съставеният предикат, ако този предикат е верен, тогава другият предикат не се оценява.
статичен предикат isEqual(Object targetRef) Той връща предикат, който тества дали два аргумента са равни според Objects.equals(Object, Object).

Пример 1 за предикатен интерфейс на Java

 import java.util.function.Predicate; public class PredicateInterfaceExample { public static void main(String[] args) { Predicate pr = a -> (a > 18); // Creating predicate System.out.println(pr.test(10)); // Calling Predicate method } } 

Изход:

 false 

Пример за предикатен интерфейс на Java 2

 import java.util.function.Predicate; public class PredicateInterfaceExample { static Boolean checkAge(int age){ if(age>17) return true; else return false; } public static void main(String[] args){ // Using Predicate interface Predicate predicate = PredicateInterfaceExample::checkAge; // Calling Predicate method boolean result = predicate.test(25); System.out.println(result); } } 

Изход:

 true