本文介绍了Drools:CONTAINS和MemberOf之间的区别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在阅读Drools 6.4.0 documentation。我不确定是否理解了containsmemberof运算符之间的区别:这两个运算符都使用集合,似乎唯一的区别是contains预期包含的对象位于右侧,而memberof预期位于左侧,因此它们是等价的,但我恐怕遗漏了一些东西。

推荐答案

此示例摘自Laune对以下问题的回答:Drools: Match local string from array in LHS of rule

rule "ruleY"
when
    Data( $los: listOfStrings )
    MyObject( string memberOf $los ) 
then
    //do stuff
end
rule "ruleY"
when
    MyObject( $s: string ) 
    Data( listOfStrings contains $s )
then
    //do stuff
end

它们是互补的。根据您拥有的数据和表达事物的最合理方式,使用其中的一种或另一种。

这篇关于Drools:CONTAINS和MemberOf之间的区别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-27 19:08