java回调的应用
来源:互联网 发布:淘宝首页全屏尺寸 编辑:程序博客网 时间:2024/06/04 19:37
一个函数如下:(部分代码省略)
public static List<SemiStory> parse(String html, boolean isTitleOnly,
String includeWords,Date latestStoryTime) {List<SemiStory> stories = new ArrayList<SemiStory>();
for (String storyItem:storyItems) {
// log.info(storyItem);// test
SemiStory story = getStory(storyItem, isTitleOnly);
if (story == null) {
log.info(storyItem);
log.error("一条结果未匹配,请检查匹配规则");
continue;
}
stories.add(story);
}
if (stories.isEmpty()) {
log.error("无相关新闻或需页面验证,请检查");// message
}
return stories;
}
有两个地方调用这个函数,一个地方要在循环里面加时间判断,一个地方却不需要。这个时候就可以使用回调了,
实现方法如下:
有时间判断的地方的代码是:
List<SemiStory> stories = NewsBaiduParser.parse(html, isTitleOnly, includeWords,latestStoryTime
,new IFilter(){
public boolean filter(Story story, Date latestStoryTime)
{
// TODO Auto-generated method stub
if(story.getTime().compareTo(latestStoryTime)<0){
return false;
}
return true;
}
});
没有用到时间判断的地方的代码:
List<SemiStory> similarStories = NewsBaiduParser.parse(html, isTitleOnly, includeWords,latestStoryTime,
new IFilter(){
public boolean filter(Story story, Date latestStoryTime)
{
// TODO Auto-generated method stub
return true;
}
});
- java回调的应用
- java回调的两种应用
- Android开发中Java回调机制的应用
- java接口的分层和回调应用
- Java的数据库应用
- java Bigdecimal的应用
- :java continue的应用
- Java的应用!
- java中流的应用
- java包的应用
- java系统托盘的应用
- java系统托盘的应用
- java系统托盘的应用
- java JSON的应用
- java系统托盘的应用
- java数组的应用
- JAVA枚举的应用
- memcached 的java应用
- hdu1394 Minimum Inversion Number
- GetStartupInfoTest
- I2C驱动
- dBm与mW
- 简易记事本
- java回调的应用
- USACO解析name that number篇
- Android控件之SlidingDrawer(滑动式抽屉)
- Struts2标签库详解
- 对zend framework xxe injection 的分析
- JAVA设计模式:享元(Flyweight)
- Galaxy Nexus设置&&开机动画制作
- PL/SQL Developer在64位windows上的使用
- 利用js实现的日期组件toolbar