
回复
过滤器模式,顾名思义,从名字上就可以看出主要用于过滤对象,实现起来也很简单!
从设计的角度看,过滤器模式涉及到三个角色:
话不多说,代码直接撸起来~
下面,我们以班级同学为例,过滤出满足要求的同学,实现过程如下!
先创建一个数据实体类Person
,如下:
然后,创建一个过滤器标准接口Filter
,代码如下:
接着,创建过滤器具体实现类AgeFilter
、GenderFilter
,代码如下:
最后,编写一个测试类如下:
输出结果:
当然,还可以按照姓名过滤,只需要写一个过滤器实现类,然后在客户端加入过滤即可!
过滤器模式的应用,当属我们最熟悉的 JavaWeb 工程中的Filter
,如果我们想自定义一个过滤器,只需要实现Filter
即可!例如创建一个允许跨域的Filter
过滤器,如下:
过滤器模式允许开发人员使用不同的标准来过滤一组对象,通过逻辑运算以解耦的方式把它们连接起来,操作也比较简单,在实际开发中,使用非常广泛。
1、菜鸟教程 - 过滤器模式