关于浏览器插入书签重复问题一直没有找到好的算法,无奈只能暂时写个笨办法了,还请路过的大神指点一二,我的逻辑是把要插入的书签封装成一个集合,在插入之前先查询出本地浏览器里的书签集合,用一个双重循环判断url和title同时相同则判定为重复,然后添加到一个新的集合,循环完毕从需要插入的集合里边remove掉重复的集合
代码如下:
private List<BookMark> removeRepeat(List<BookMark> restore,List<BookMark> local){
List<BookMark> newlist=new ArrayList<BookMark>();
for(int i=0;i<restore.size();i++){
String title=restore.get(i).getTitle();
String url=restore.get(i).getUrl();
for(int j=0;j<local.size();j++){
//title和url同时相同则判定为重复
if(title.trim().equals(local.get(j).getTitle().trim())&&url.trim().equals(local.get(j).getUrl().trim())){
newlist.add(restore.get(i));
break;
}
}
}
//如果有重复,把所有重复的移除
if(newlist.size()>0){
restore.removeAll(newlist);
}
return restore;
}原文:http://blog.csdn.net/shaohx0518/article/details/39030949