过滤器模式

介绍

过滤器模式允许开发者用不同的标准过滤一组对象。(结构型模式)
使用过滤器模式可以很方便的进行扩展,单独一个过滤器的执行是独立的,不依赖其他过滤器。

DEMO

例如,一个Person类有姓名、性别、婚姻状况属性 :

建立一个过滤器标准

实现男性过滤和未婚过滤

过滤器可以进行叠加和其他操作

最后进行测试

输出结果如下:

Persion  name : 邓二  sex  MALE  marital  MARRIED
Persion  name : 张三  sex  MALE  marital  SINGLE
Persion  name : 王五  sex  MALE  marital  SINGLE
Persion  name : 孙七  sex  MALE  marital  SINGLE
Persion  name : 罗八  sex  MALE  marital  MARRIED

Persion  name : 邓二  sex  MALE  marital  MARRIED
Persion  name : 张三  sex  MALE  marital  SINGLE
Persion  name : 王五  sex  MALE  marital  SINGLE
Persion  name : 孙七  sex  MALE  marital  SINGLE
Persion  name : 罗八  sex  MALE  marital  MARRIED

Persion  name : 张三  sex  MALE  marital  SINGLE
Persion  name : 王五  sex  MALE  marital  SINGLE
Persion  name : 孙七  sex  MALE  marital  SINGLE
01-14 00:29