java - 查找字符串与单词数组的匹配次数的最有效方法?

标签 java

假设我有一个字符串

String test = "This is a test string and I have some stopwords in here";

我想看看下面数组中的单词与我的字符串匹配了多少次

伪代码

array = a,and,the,them,they,I

所以答案是“3”

只是好奇在 Java 中最有效的方法是什么?

最佳答案

是这样的吗?不确定“最有效”,但足够简单。

Set<String> s1 = new HashSet<String>(Arrays.asList("This is a test string and I have some stopwords in here".split("\\s")));
Set<String> s2 = new HashSet<String>(Arrays.asList("a", "and", "the", "them", "they", "I"));
s1.retainAll(s2);
System.out.println(s1.size());

只是两组词的交集。

关于java - 查找字符串与单词数组的匹配次数的最有效方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3208971/

相关文章:

java - 搜索具有给定运算符的类对象的用法? [ eclipse ]

java - Java 中的函数对象

java - Collections.unmodifiableList 和防御性副本

java - 在不使用 sql 或 nosql 服务器的情况下将数据提供程序集成到应用程序

java - 使用 PowerMockito 的模拟构造函数不起作用

java - Curator Framework 绕过 Zookeeper ACL 设置

java - 如何在更新期间将 null 设置为 QueryDSL 时间戳列?

仅使用 iText 通过限制比例和缩小尺寸来进行图像的 Java 转换

java - Robot.mouseMove 没有正确移动到指定位置

java - 安卓音频输入流