我有两个字符串数组列表,我想计算它们中的单词数。
每个 ArrayList 都包含关键短语,例如由几个单词组成的字符串,例如:
非经济衰退
长路
巴拉克·奥巴马总统
[...]
我尝试了这两种方法,但出现了 NullPointerException
public boolean containsKeyword(String testKeyword, ArrayList<String> list)
{ return list.contains(testKeyword);
}
public int compareKeywords(Quotidiano quotidiano){
int sameKeywords=0;
for(int i=0; i<this.Keywords.size(); i++){
if(this.containsKeyword(this.getKeyword(i), quotidiano.Keywords))
sameKeywords++;
}
return sameKeywords;
}
非常感谢您的解答!
<小时/>[编辑]
它使用交集工作,谢谢! 但如果比较单个单词就更好了。
例如,如果我有关键短语
“意大利的传播”,
“传播低于 300”,
我认为交集为空,相反我希望返回“spread”。 我该怎么做?
最佳答案
使用Apache ListUtils Intersection
public static java.util.List intersection(java.util.List list1,
java.util.List list2)
PS:这会抛出java.lang.NullPointerException
- 如果任一列表为空
关于java - 比较两个 arrayList<String> java 中的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13208717/