java - 查看一个字符串是否有在 LinkedList 中使用 equals() 提供的关键字
问题描述
鉴于这种情况,我想看看字符串是否包含所有给定的关键字,至少一次/单词。我的 for 循环似乎没有这样做,所以我很感兴趣是否有另一种方法可以尝试解决问题。
LinkedList<String> keyWords = new LinkedList<String>();
keyWords.add("amet");
keyWords.add("eiusmod");
String toCheck = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.";
String[] toCheckWords = toCheck.split(" ");
for (int i=0; i<toCheckWords.length(); i++) {
if (keyWords.get(i).equals(toCheckWords[i])
return true;
}
return false;
预计返回真
解决方案
你为什么不这样做:
public static boolean check(String input, List<String> keywords) {
for (String keyword : keywords)
if (!input.contains(keyword))
return false;
return true;
}
在你的情况下你会这样称呼:
check(toCheck, keyWords);
推荐阅读
- python-3.x - 为 zipline 摄取设置 API 密钥时遇到问题
- image - 如何在组件加载时对数组中的所有项目使用 Image.getSize?
- java - JFrame 不会关闭
- jupyter-notebook - 如何在 jupyterhub 中使用令牌库身份验证?
- c++ - 在 C++ 中实现 scipy.signla.filtfilt?
- vue.js - Vue 组件范围样式未显示 b-form-radio-group 按钮变体
- r - 用于 ARDL 包输出的 Stargazer:“错误:无法识别的对象类型”
- android - Android 工作管理器在我的 oppo 手机中无法使用
- powershell - 在 PowerShell 中使用 PrintDocument 的问题
- sql - 使用 mariaDB 更新父表时出现错误 1452