📘 Premium Read: Access my best content on Medium member-only articles — deep dives into Java, Spring Boot, Microservices, backend architecture, interview preparation, career advice, and industry-standard best practices.
✅ Some premium posts are free to read — no account needed. Follow me on Medium to stay updated and support my writing.
🎓 Top 10 Udemy Courses (Huge Discount): Explore My Udemy Courses — Learn through real-time, project-based development.
▶️ Subscribe to My YouTube Channel (172K+ subscribers): Java Guides on YouTube
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