drools - Drools-比较2个对象的属性
问题描述
我需要确定选择将员工分配到哪一列火车。
假设我有 2 列具有以下属性的火车:
Train 1 Train 2
trainID=1 trainID=2
passengerCount=100 passengerCount=150
numberOfBoxes=12 numberOfBoxes=7
如果我将这两个对象都传递给 Drools 并检查
$train1 : TrainProperties($pasCnt : passengerCount)
$train2 : TrainProperties($pasCnt2 : passengerCount > $pasCnt)
then
Sysout("Train 2 is more important")
end
现在我必须根据 numberOfBoxes 添加更多条件。我该怎么做?
解决方案
如Drools 文档中所述,您可以使用 a在模式内,
创建多个AND
条件。您也可以使用||
来创建OR
.
因此,在您的情况下,您可以执行以下操作:
when
$train1 : TrainProperties($pasCnt : passengerCount, $boxes: numberOfBoxes)
$train2 : TrainProperties($pasCnt2 : passengerCount > $pasCnt, numberOfBoxes > $boxes )
then
Sysout("Train 2 is more important")
end
希望能帮助到你,
推荐阅读
- python-3.x - 在 Python 3 中 random.shuffle 非常慢,带有列表
- c# - 功能不是每次都运行
- highcharts - 带有向下钻取的嵌套柱形图
- asp.net - 如果长度大于 1,则无法读取 cookie
- vue.js - 如何访问 vuex 存储模块中的嵌套操作?
- fortran - GNU Fortran / OpenMP 程序如何设置和检索 stacksize-var ICV?
- contacts - 在没有现有地址的联系人中如何设置地址
- accessibility - 有关 PCI(支付卡行业)合规性的安全/托管字段的 WCAG 指南
- azure-devops - 在托管池中找不到满足指定要求的代理
- java - 如何在 Android SeekBar 中去除 Thumb 周围的气泡?