如何通过 Drools 规则语言 (DRL) 检查对象是否也是列表的一部分?
让我们看一下考试示例。想象一下考试有一个房间和一个列表的情况。现在我想检查 Room 对象是否在列表中。是否有像 roomList.contains(rooms) 这样的函数?
我需要这个用于 DRL。
谢谢
最佳答案
对于这样的模型:
class Exam {
Room room;
...
}
class Room {
List<Room> roomsList;
...
}
那么你的规则可能如下所示:
rule X
when
$exam1 : Exam()
$exam2 : Exam( room.roomsList contains $exam1.room )
then
// do something
end
您还可以使用“memberOf”运算符来检查元素是否是列表的成员,或者如果您使用的是 Drools 5.4+,则直接调用方法。
关于java - 检查对象是否在列表中的规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11925806/