当我使用drools规则引擎时,如何表示一个对象为null

当我使用drools规则引擎时,如何表示一个对象为null,drools,business-rules,Drools,Business Rules,我想知道当我使用drools规则引擎时,如何表示左侧的一个对象为null? 任何人都可以告诉我如何使用drools关键字“not”等等。谢谢 您可以在when子句中调用not来检查空对象: rule "somerule" no-loop when not AnObject() then // rule body when AnObject is null end; Drools是在Java之上构建的,所以有一个对象实例(可能有空属性,也可能没有空属性),也可

我想知道当我使用drools规则引擎时,如何表示左侧的一个对象为null?
任何人都可以告诉我如何使用drools关键字“not”等等。谢谢

您可以在
when
子句中调用
not
来检查空对象:

rule "somerule"
    no-loop
    when not AnObject()
    then
      // rule body when AnObject is null
end;

Drools是在Java之上构建的,所以有一个对象实例(可能有空属性,也可能没有空属性),也可能没有。如果该对象是工作内存中的“事实”,则该对象不为空,您的LHS应确定该对象是否存在:

exists MyObject()
not exists MyObject()
但是,如果您试图查找具有null属性的事实,则可以执行以下操作:

obj: MyObject(myProperty == null)

感谢您的回复,您能告诉我如何表示对象为null,就像下面的代码一样:object object=new object();但对象的属性是空的,我想表示对象是空的,那么如何表示呢?谢谢,你能写一个详细的例子吗,谢谢!这个代码不完整-没有“anObject”的定义。你能告诉我你的联系方式吗?我可以和你交朋友吗?我现在的答案是正确的。是的,你可以通过LinkedIn与我联系。我已经在我的个人资料中提供了详细信息。