Hazelcast 子句中的谓词

Hazelcast Predicate in clause

谁能告诉我如何 'in' 从句中使用 Hazelcast 谓词。我想使用以下内容,

Predicates.in('column',value);

我想将值作为值的 ArrayList 传递。但它抛出错误,因为它期望实现可比较的对象。有什么解决方法吗?

Predicates.in 采用类型(字符串、可比较...)的参数。

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

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

(new String[]) 参数只是为了确保你得到一个字符串数组,否则你将得到一个对象数组。