我使用jsoup解析器来提取我的锚标记,然后我只是将链接添加到一个散列集。代码如下
把我的全部代码都贴出来。我理解这个问题是因为我使用的是toString,值会改变,我的目标是当我得到一堆链接时,我想要消除诸如http://cse.syr.edu和http://cse.syr.edu/这样的链接,这样我的hashSet就包含了唯一的元素。我怎么能这么做
for ( Element link : links)
{
String test=link.attr("abs:href");
if(!(link.attr("abs:href").contains("http://cse.syr.edu")))
continue ;
else if(h.isEmpty()){
h.add(test);
}
else if(h.contains(test) || h.contains(test+"/")) // I now removed (test+"/")
continue;
else {
h.add(test);}
我现在更新了我的问题,谢谢RJ
发布于 2013-11-13 09:36:28
你的字符串里可能有空格。HashSet工作得很好。
发布于 2013-11-13 09:37:07
如果我们讨论的是java.util.HashSet,最有可能的解释是您对问题的诊断是不正确的。确保集合中的字符串确实是相同的(而不是微妙的不同),并且您不会意外地重新创建或清除添加相同字符串之间的HashSet。
https://stackoverflow.com/questions/19950128
复制相似问题