Hazelcast子句中的谓词



有人能告诉我如何用Hazelcast谓词'in'子句吗。我想使用以下

Predicates.in('column',value);

我想将该值作为值的ArrayList传递。但它正在抛出错误,因为它期望实现可比较的对象。对此有什么变通办法吗?

Predicates.in接受类型(String、Comparable…(的参数。

因此,对于列名,您可以像您所做的那样传递一个String。可比较的意味着您可以在逗号分隔的列表中传递单个值,但也可以在数组中传递它们。ArrayList不会自动转换,但您可以按以下方式进行转换:

ArrayList<String> values = new ArrayList<>(Arrays.asList("one", "two", "three");
Predicates.in("column", values.toArray(new String[]));

(newString[](参数只是为了确保返回一个String数组,否则将获得一个Object数组。

最新更新