问题描述
比如,我有一列数据123456789,第一次我想实现保留等于3的数据;第二次我想实现保留等于2和3的数据;第三次我想实现保留等于2和3和4的数据;第四次我想实现保留等于1和4和9的数据;以上意思就是,我的过滤条件可能随时改变,我该怎么设计? 问题补充:dreamhyz 写道
解决方案
public interface NumberFilter{ public boolean accept(int n);}public class A{NumberFilter filter;public void setFilter(NumberFilter filter){this.filter=filter;}}大概就这意思吧。我直接敲的代码,你自己调试。
解决方案二:
可使用迭代模式和装饰模式结合,具体代码略
解决方案三:
呵呵,或许我没明白你的意思吧
解决方案四:
我有个问题不解,竟然你已经知道需要保留的数据,为什么还费周折去过滤?你过滤的结果不就是需要过滤的数据吗?
时间: 2024-08-25 03:38:46