首页 > 代码库 > android浏览器书签插入去重算法

android浏览器书签插入去重算法

关于浏览器插入书签重复问题一直没有找到好的算法,无奈只能暂时写个笨办法了,还请路过的大神指点一二,我的逻辑是把要插入的书签封装成一个集合,在插入之前先查询出本地浏览器里的书签集合,用一个双重循环判断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;
	}

android浏览器书签插入去重算法