java - 比较两个 arrayList<String> java 中的单词

标签 java string arraylist cpu-word string-comparison

我有两个字符串数组列表,我想计算它们中的单词数。

每个 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/

相关文章:

java - 自定义 Horizo​​ntalScrollView 中的按钮

c - 用于字符串连接的 OpenCL 内核

c++ - 如何使用 stoi() 将字符串转换为整数?

java - 我应该使用哪个 Java 集合?

java - toArray 方法在扩展 ArrayList<> 的类中不起作用

java - 空字符串和空字符串的区别

java - 在 Android MultipartMode POST 中发送多个嵌套 NameValue 数组

java - 在 JTable 中为数据库外键添加组合框

python - 如何替换特定子字符串后的部分字符串

java - 是否可以从类型为 Class 的 ArrayList 中调用方法?