Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
这里有一个;及;关于Java领域的子句?_Java_Android_Realm - Fatal编程技术网

这里有一个;及;关于Java领域的子句?

这里有一个;及;关于Java领域的子句?,java,android,realm,Java,Android,Realm,我目前正在使用Android的Realm 87.1版本,我没有找到任何和子句,只是或子句 这是我的问题: 我有一个表Products和一个AutoCompleteTextView,用户将在其中搜索他的产品,而一些建议将下拉到列表中。如下图所示 假设产品具有以下价值: { "Product 1", "Product 2", "Product 3", "Product 4", "Product 5" } 这些只是这个问题的简单名称 我试图实现的是,当用户输入“prod5”时,建议是“produc

我目前正在使用Android的Realm 87.1版本,我没有找到任何子句,只是子句

这是我的问题:

我有一个表Products和一个AutoCompleteTextView,用户将在其中搜索他的产品,而一些建议将下拉到列表中。如下图所示

假设产品具有以下价值:

{ "Product 1", "Product 2", "Product 3", "Product 4", "Product 5" }
这些只是这个问题的简单名称

我试图实现的是,当用户输入“prod5”时,建议是“product5”。这将使用户更容易找到他的产品,而不是键入所有产品的名称

因此,使用此模板为AutoCompleteTextView过滤数据,在PerformReamFiltering方法中,我尝试了以下方法:

RealmQuery realmQuery = RealmResults<Products>.where();
String[] split = String.valueOf(constraint).split(" ");
int i = 1;
for(String part : split) {
    if(split.length == i) {
        realmQuery = realmQuery.contains("ProductDescription", part, Case.INSENSITIVE);
    }
    else
    {
        realmQuery = realmQuery.contains("ProductDescription", part, Case.INSENSITIVE).or();
    }
    i++;
}
return realmQuery.findAll();
RealmQuery RealmQuery=RealmResults.where();
String[]split=String.valueOf(constraint).split(“”);
int i=1;
用于(字符串部分:拆分){
如果(split.length==i){
realmQuery=realmQuery.contains(“ProductDescription”,部分,不区分大小写);
}
其他的
{
realmQuery=realmQuery.contains(“ProductDescription”,部分,不区分大小写)。或();
}
i++;
}
返回realmQuery.findAll();
显然,这没有正确地过滤数据并返回所有产品,因为应该是

因此,我的问题是: Java领域中有一个子句?或者是另一个与相同的子句,或者是实现此过滤查询的另一种方法


谢谢你的帮助

我找到了一个很好的解决办法

RealmQuery realmQuery = RealmResults<Products>.where();
String[] split = String.valueOf(constraint).split(" ");
for(String part : split) {
    realmQuery = realmQuery.contains("ProductDescription", part, Case.INSENSITIVE);
}
return realmQuery.findAll();
RealmQuery RealmQuery=RealmResults.where();
String[]split=String.valueOf(constraint).split(“”);
用于(字符串部分:拆分){
realmQuery=realmQuery.contains(“ProductDescription”,部分,不区分大小写);
}
返回realmQuery.findAll();
我只是不断地替换相同的查询

然而,我还不知道为什么它会起作用,所以如果有人知道为什么,我会很高兴听到


最好的问候

和()!领域支持非常好