Filter pattern or Criteria pattern is a design pattern that enables developers to filter a set of objects using different criteria and chaining them in a decoupled way through logical operations. This type of design pattern comes under structural pattern as this pattern combines multiple criteria to obtain single criteria.
Note: CriteriaPatternDemo.java missing import statments
import java.util.ArrayList; import java.util.List;
javac -cp . FilterPatternDemo.java
java FilterPatternDemo