In this guide, you will learn about the Predicate or() method in Java programming and how to use it with an example.
1. Predicate or() Method Overview
Definition:
The Predicate.or() is a default method available in the Predicate interface. It is used to combine two predicates using a logical OR operation. The resultant predicate evaluates to true if either the original or the specified predicate evaluates to true.
Syntax:
default Predicate<T> or(Predicate<? super T> other)
Parameters:
- other: A predicate which will be logically OR-ed with the current predicate.
Key Points:
- The or() method allows the combination of multiple predicate conditions with an OR operation.
- It is useful when a data set needs to be filtered based on one of several conditions.
- If either the current predicate or the specified predicate evaluates to true, the composite predicate will also evaluate to true.
2. Predicate or() Method Example
import java.util.Arrays;
import java.util.List;
import java.util.function.Predicate;
public class PredicateOrExample {
public static void main(String[] args) {
List<String> names = Arrays.asList("Alice", "Bob", "Charlie", "Anna", "Aria");
// Define a Predicate to test if a name starts with the letter 'A'
Predicate<String> startsWithA = name -> name.startsWith("A");
// Define a Predicate to test if a name length is exactly 3
Predicate<String> lengthIs3 = name -> name.length() == 3;
// Combine the two predicates using or()
Predicate<String> combinedPredicate = startsWithA.or(lengthIs3);
for (String name : names) {
if (combinedPredicate.test(name)) {
System.out.println(name);
}
}
}
}
Output:
Alice Bob Anna Aria
Explanation:
In the provided example, we first define two separate predicates - one to check if a name starts with the letter 'A' and another to check if the length of the name is exactly 3.
Using the or() method, these two predicates are combined to form a composite predicate. As a result, the names "Alice", "Bob", "Anna", and "Aria" from the list are printed, as they satisfy at least one of the conditions.
Comments
Post a Comment
Leave Comment