Predicate is a boolean-valued functional interface with test() method that takes one argument and returns either true or false.
Syntax:
@FunctionalInterface
public interface Predicate<T> {
boolean test(T t);
}
Some Examples of Usage of Predicate with Lambadas
Example 1: To know if a number is even or odd:
public static void main(String[] args) {
Predicate<Integer> evenOrOdd = num -> num % 2 == 0;
int testNumberForEvenOdd = 5;
boolean isEven = evenOrOdd.test(testNumberForEvenOdd);
System.out.println(testNumberForEvenOdd + " is Even: " + isEven);
}
Output:
Example 2: To check if today is Weekday or Weekend:
package org.code2care.examples;
import java.time.DayOfWeek;
import java.time.LocalDate;
import java.util.function.Predicate;
public class WeekendChecker {
public static void main(String... args) {
Predicate<LocalDate> isWeekend = date -> {
DayOfWeek dayOfWeek = date.getDayOfWeek();
return dayOfWeek == DayOfWeek.SATURDAY || dayOfWeek == DayOfWeek.SUNDAY;
};
LocalDate currentDate = LocalDate.now();
if (isWeekend.test(currentDate)) {
System.out.println("Today is a weekend day.");
} else {
System.out.println("Today is not a weekend day.");
}
}
}
Output:
Example 3: Check if the provided number is greater than 100
public static void main(String[] args) {
Predicate<Integer> isGreaterThan100 = number -> number > 100;
int numberToCheck = 80;
if (isGreaterThan100.test(numberToCheck)) {
System.out.println(numberToCheck + " is greater than 100.");
} else {
System.out.println(numberToCheck + " is not greater than 100.");
}
}
Output:
Example 4: Check if the object is nul
package org.code2care.examples;
import java.util.function.Predicate;
public class NullChecker {
public static void main(String[] args) {
Predicate<Object> isNull = obj -> obj == null;
Object objectToCheck = null;
if (isNull.test(objectToCheck)) {
System.out.println("The object is null.");
} else {
System.out.println("The object is not null.");
}
}
}
Output:
References:
Predicate Interface (java.util.function.Predicate):
- Official Oracle Documentation: Predicate Interface
Lambda Expressions (lambdas):
- Official Oracle Documentation: Lambda Expressions

Comments & Discussion
Facing issues? Have questions? Post them here! We're happy to help!