gpt4 book ai didi

drools - 如何在drools中使用决策表实现小于和大于规则?

转载 作者:行者123 更新时间:2023-12-04 22:14:55 25 4
gpt4 key购买 nike

我想使用决策表基于流口水中的较小和较大的值来实现简单的规则。

在 drl 中实现规则很容易,例如:

rules "less than"
when Example(value < 10)
then
System.out.println("Less than 10")
end

rules "equals"
when Example(value = 10)
then
System.out.println("Equals 10")
end

rules "greater than"
when Example(value > 10)
then
System.out.println("Greater than 10")
end

但是我怎么能把它翻译成流口水的决策表呢?到目前为止,我看到的所有示例都是在条件单元格中进行比较。甚至可以在值单元格中进行比较吗?

我见过的所有例子都是以下格式:
CONDITION                          |  ACTION
Example |
value |
-----------------------------------|-------------------------------------
10 | System.out.println("equals to 10")

但这仅适用于 1 条规则,并且执行以下操作具有完全不同的含义:
CONDITION  | CONDITION  | CONDITION  | ACTION
Example
value | value > $1 | value < $1 |
-----------+------------+------------+----------------
10 | 10 | 10 | ???

甚至可以做到以下几点?
CONDITION                          |  ACTION
Example |
value |
-----------------------------------+----------------------------------------
10 | System.out.println("equals to 10")
> 10 | System.out.println("greater than 10")
< 10 | System.out.println("less than 10")

实现这些规则的正确方法是什么?

最佳答案

我发现我可以通过将 $param 放在约束字段单元格中并将整个约束放在值单元格中来实现我所需要的。所以决策表看起来像这样:

CONDITION                      | ACTION
Example |
$param | System.out.println("$param");
-------------------------------+-----------------------------------
value == 10 | equals to 10
value > 10 | greater than 10
value < 10 | less than 10

关于drools - 如何在drools中使用决策表实现小于和大于规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11320905/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com