【发布时间】:2021-05-11 06:10:58
【问题描述】:
我正在使用主题标签在我的应用中实现搜索。这个想法是程序将循环我的数据库中的所有现有帖子并检查是否是 currentPost 中的所有输入主题标签,然后它将帖子添加到 recyclerView
由于某种原因,string.contains 无法正常工作,例如我搜索了“brasil historia”并且有两个主题标签,但函数返回为 false
这是我正在使用的方法:
private boolean checkTagsSearch(List<String> tags, String searchString, String query) {
String[] searchHashtagsList = query.split(" ");
int numberOfSearchedTags = searchHashtagsList.length;
int counter=0;
// if there is the search string in the tags
// se o post tiver a search string
for(String currentTag : tags){
Log.i("checkTags", "search: " + searchString + " currentTag: " + currentTag+ " counter: "+counter);
Log.i("checkTags", "search string contains? " + searchString.contains(currentTag));
if (searchString.contains(currentTag)) {
counter++;
if(counter == numberOfSearchedTags) {
return true;
}
}
}
return false;
}
这是我为 Log.i 获得的日志:
正如你在这里看到的,搜索字符串是“brasilhistoria”,它搜索了巴西和历史,但包含是错误的
2021-02-07 08:28:18.115 22455-22455/com.I/checkTags: search: brasilhistoria currentTag: brasil counter: 0
2021-02-07 08:28:18.115 22455-22455/com.I/checkTags: search string contaiins? false
2021-02-07 08:28:18.115 22455-22455/com.I/checkTags: search: brasilhistoria currentTag: imperio counter: 0
2021-02-07 08:28:18.115 22455-22455/com.I/checkTags: search string contaiins? false
2021-02-07 08:28:18.116 22455-22455/com.I/checkTags: search: brasilhistoria currentTag: primeiroreinado counter: 0
2021-02-07 08:28:18.116 22455-22455/com.I/checkTags: search string contaiins? false
2021-02-07 08:28:18.116 22455-22455/com.I/checkTags: search: brasilhistoria currentTag: historia counter: 0
2021-02-07 08:28:18.116 22455-22455/com.I/checkTags: search string contaiins? false
【问题讨论】:
-
您的标签似乎包含空格。