首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在Drools中使用小于(或等于)

在Drools中使用小于(或等于)
EN

Stack Overflow用户
提问于 2014-04-15 06:58:35
回答 1查看 2.2K关注 0票数 0

我正在尝试为我正在处理的一个java项目编写一个Drools文件,并且我的一条规则严重依赖于小于或等于。我在一些地方读到过,你不应该使用<,实际上应该使用&lt;。这可能意味着<=将成为&lt;=

Netbeans也用红色突出显示了我的<,这表明有些地方不对劲。

在我看来,这完全是疯了--这是否意味着下面的代码会发生如下变化:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
($T1.getValue()<$T2getValue)&&($T1.getOtherValue()<=$T2getOtherValue)

变成了

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
($T1.getValue()&lt;$T2getValue)&&($T1.getOtherValue()&lt;=$T2getOtherValue)

对此有何解释?

EN

回答 1

Stack Overflow用户

发布于 2014-04-15 14:08:03

*.drl文件中,您可以安全地使用<>。它不需要XML或HTML转义。

例如,请注意其中一个optaplanner示例中的规则中的>:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
rule "requiredCpuPowerTotal"
  when
    $computer : CloudComputer($cpuPower : cpuPower)
    $requiredCpuPowerTotal : Number(intValue > $cpuPower) from accumulate(
        CloudProcess(
            computer == $computer,
            $requiredCpuPower : requiredCpuPower),
        sum($requiredCpuPower)
    )
  then
    scoreHolder.addHardConstraintMatch(kcontext, $cpuPower - $requiredCpuPowerTotal.intValue());
end

我会把你的代码写成这样:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
T1($t1Value : value, $t1OtherValue : otherValue)
T2(value < $t1Value, otherValue <= $t1OtherValue)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23076615

复制
相关文章
mongodb查询的语法(大于,小于,大于或等于,小于或等于等等)
$gt:大于 $lt:小于 $gte:大于或等于 $lte:小于或等于 例子: db.collection.find({ "field" : { $gt: value } } ); // greater than : field > value db.collection.find({ "field" : { $lt: value } } ); // less than : field < value db.collection.find({ "field" : { $gte: value } } ); // greater than or equal to : field >= value db.collection.find({ "field" : { $lte: value } } ); // less than or equal to : field <= value
拓荒者
2019/09/10
8.2K0
mybatis中大于等于小于等于的写法
个人博客:https://suveng.github.io/blog/​​​​​​​
suveng
2019/09/18
3.9K0
三个数的和小于等于k
给一个数组以及一个数K, 从这个数组里面选择三个数,使得三个数的和小于等于K, 有多少种选择的方法?(不包括重复的情况) Example: Input: nums = [3,2,5,2,1,4,2,3] k = 7 Output: 6 # [1,2,4], [1,2,3], [1,2,2], [1,3,3], [2,2,2], [2,2,3] 解题思路: 这个题是“三个数的和等于K”的变形,主要难点在于去重。首先,还是先列表从小到大排序,然后外循环遍历 nums[0...n-2],将三个数问题转化为两个
echobingo
2018/04/25
1.5K0
『ACM-算法-二分法』在单调递增序列a中查找小于等于x的数中最大的一个(即x或x的前驱)
写在前面:我们主要还是分享算法的模板,而不是去刨析算法的原理! 定义: 二分答案是指在答案具有单调性的前提下,利用二分的思想枚举答案,将求解问题转化为验证结果。 流程: 首先需要估计答案的上下界,然后不断取区间中点进行验证(这就要求答案的验证应当简单可行),并通过验证结果不断更新答案区间,最终得到答案。不难看出,朴素的枚举验证时间复杂度是O(n)的,而二分可以做到O(logn) 特征: 1.答案具有单调性 2.二分答案的问题往往有固定的问法,比如:令最大值最小(最小值最大),求满足条件的最大(小
风骨散人Chiam
2020/10/28
8650
【模板小程序】求小于等于N范围内的质数
关于搜寻一定范围内素数的算法及其复杂度分析                                                       ——曾晓奇     关于素数的算法是信息学竞赛和程序设计竞赛中常考的数论知识,在这里我跟大家讲一下寻找一定范围内素数的几个算法。看了以后相信 对大家一定有帮助。     正如大家都知道的那样,一个数 n 如果是合数,那么它的所有的因子不超过sqrt(n)--n的开方,那么我们可以用这个性质用最直观的方法 来求出小于等于n的所有的素数。     num = 0;     for(i=2; i<=n; i++)     { for(j=2; j<=sqrt(i); j++)          if( j%i==0 ) break;        if( j>sqrt(i) ) prime[num++] = i; //这个prime[]是int型,跟下面讲的不同。     }     这就是最一般的求解n以内素数的算法。复杂度是o(n*sqrt(n)),如果n很小的话,这种算法(其实这是不是算法我都怀疑,没有水平。当然没 接触过程序竞赛之前我也只会这一种求n以内素数的方法。-_-~)不会耗时很多.     但是当n很大的时候,比如n=10000000时,n*sqrt(n)>30000000000,数量级相当大。在一般的机子它不是一秒钟跑不出结果,它是好几分钟都跑不 出结果,这可不是我瞎掰的,想锻炼耐心的同学不妨试一试~。。。。     在程序设计竞赛中就必须要设计出一种更好的算法要求能在几秒钟甚至一秒钟之内找出n以内的所有素数。于是就有了素数筛法。     (我表达得不清楚的话不要骂我,见到我的时候扁我一顿我不说一句话。。。)     素数筛法是这样的:     1.开一个大的bool型数组prime[],大小就是n+1就可以了.先把所有的下标为奇数的标为true,下标为偶数的标为false.     2.然后:       for( i=3; i<=sqrt(n); i+=2 )       {   if(prime[i])            for( j=i+i; j<=n; j+=i ) prime[j]=false;       }     3.最后输出bool数组中的值为true的单元的下标,就是所求的n以内的素数了。     原理很简单,就是当i是质(素)数的时候,i的所有的倍数必然是合数。如果i已经被判断不是质数了,那么再找到i后面的质数来把这个质 数的倍数筛掉。      一个简单的筛素数的过程:n=30。     1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30     第 1 步过后2 4 ... 28 30这15个单元被标成false,其余为true。     第 2 步开始:      i=3; 由于prime[3]=true, 把prime[6], [9], [12], [15], [18], [21], [24], [27], [30]标为false.      i=4; 由于prime[4]=false,不在继续筛法步骤。      i=5; 由于prime[5]=true, 把prime[10],[15],[20],[25],[30]标为false.      i=6>sqrt(30)算法结束。     第 3 步把prime[]值为true的下标输出来:      for(i=2; i<=30; i++)      if(prime[i]) printf("%d ",i);     结果是 2 3 5 7 11 13 17 19 23 29     这就是最简单的素数筛选法,对于前面提到的10000000内的素数,用这个筛选法可以大大的降低时间复杂度。把一个只见黑屏的算法 优化到立竿见影,一下就得到结果。关于这个算法的时间复杂度,我不会描述,没看到过类似的记载。只知道算法书上如是说:前几年比 较好的算法的复杂度为o(n),空间复杂度为o(n^(1/2)/logn).另外还有时间复杂度为o(n/logn),但空间复杂度为O(n/(lognloglogn))的算法。 我水平有限啦,自己分析不来。最有说服力的就是自己上机试一试。下面给出这两个算法的程序: //最普通的方法: #include<stdio.h> #include<math.h>
xiaoxi666
2018/10/29
1.3K0
Drools使用dsl语言
DSL == Domain Specific Language 以贴近业务领域的方式,即以类自然语言的方式来构造软件,使得我们不用花费太多精力就能看懂代码所对应的业务含义 。 它是创建规则语言的一种方式,致力于解决我们的问题域 。 DSL相当于一个转换器,它能将某一领域内的术语转换成规则语言。
程序新视界
2022/05/09
1K0
规则引擎Drools在贷后催收业务中的应用
在日常业务开发工作中我们经常会遇到一些根据业务规则做决策的场景。为了让开发人员从大量的规则代码的开发维护中释放出来,把规则的维护和生成交由业务人员,为了达到这种目的通常我们会使用规则引擎来帮助我们实现。
2020labs小助手
2022/11/29
1.6K0
在C或C++中如何使用PI(π)值
参考链接: C++ acos() #include <math.h> #define PI acos(-1) 主要是利用利用数学函数中的反三角函数,但是要注意一定引入math包           arccos          ⁡          (          −          1          )          =          π         \arccos(-1)=\pi      arccos(−1)=π  完整示例:  //#define LOCAL #includ
用户7886150
2021/02/09
5.9K0
在 JavaScript 中,什么时候使用 Map 或胜过 Object
在 JavaScript 中,对象是很方便的。它们允许我们轻松地将多个数据块组合在一起。 在ES6之后,又出了一个新的语言补充-- Map。在很多方面,它看起来像是一个功能更强的对象,但接口却有些笨拙。
前端小智@大迁世界
2022/10/08
2.1K0
在 JavaScript 中,什么时候使用 Map 或胜过 Object
golang刷leetcode: 小于等于 K 的最长二进制子序列
解释:s 中小于等于 5 的最长子序列是 "00010" ,对应的十进制数字是 2 。
golangLeetcode
2022/08/02
2940
子数组累加和为aim(小于等于aim)的三个问题
 这个和上面唯一的不同就是数组中只有正数,这里使用类似窗口移动的做法,给出两个指针,L,R表示窗口的左右边界 ,sum表示的是arr[L,R]之间的累加和,L,R一直往右动。
mathor
2018/09/19
9050
子数组累加和为aim(小于等于aim)的三个问题
mybatis在xml文件中处理大于号小于号的方法(mybatis大于小于的转义)
SELECT * FROM test WHERE 1 = 1 AND start_date  &lt;= CURRENT_DATE AND end_date &gt;= CURRENT_DATE
WindCoder
2018/09/20
4.2K0
mybatis在xml文件中处理大于号小于号的方法(mybatis大于小于的转义)
Drools决策表的使用
Drools 决策表的使用 决策表简介 引用官方的话 决策表是一个“精确而紧凑的”表示条件逻辑的方式,非常适合商业级别的规则。 目前决策表支持xls格式和csv格式。决策表与现有的drool
程序新视界
2017/12/29
2.7K0
Drools决策表的使用
关于xml中大于等于、小于等于解析错误,还有就是在xml里面根据对应的时间字段查询近一年内的数据
1.CDATA区:它的全称为character data,以"<![CDATA[ "开始,以" ]]>" 结束,在两者之间嵌入不想被解析程序解析的原始数据,解析器不对CDATA区中的内容进行解析,而是
一写代码就开心
2020/11/20
3K0
Drools规则模板使用之Excel
原文链接:http://www.choupangxia.com/topic/detail/98
程序新视界
2022/05/09
1.3K0
【Drools二】打工人学习Drools基础语法
学习语法之前先把项目结构搭建起来。使用IDE创建Maven项目,引入Drools依赖。上一篇文章中已经介绍一个实战,溪源在此篇文章再重复分享一下。 第一步:创建maven工程drools_quickstart并导入drools相关maven坐标
沁溪源
2020/11/24
2.1K0
Kotlin 中双等于和三等于区别
但是需要注意的是重写 equals 方法时,需要重写 hashCode() 方法,否则无法和 hash 集合类一起正常工作,可以通过快捷键自动生成
大发明家
2021/12/17
2.3K0
【Python】输入一个自然数n,求小于等于n的素数之和
import math def isPrime(num): for i in range(2,int(math.sqrt(num))): if(num%i==0): return False return True sum=0 n=int(input()) for i in range(2,n+1): if(isPrime(i)): sum+=i print(sum)
Regan Yue
2021/09/16
1.9K0
mybatis在xml文件中处理大于号小于号的方法
因为这个是xml格式的,所以不允许出现类似“>”这样的字符,但是都可以使用<![CDATA[ ]]>符号进行说明,将此类符号不进行解析  你的可以写成这个: 
似水的流年
2019/12/04
2K0
mybatis在xml文件中处理大于号小于号的方法
第一种方法: 用了转义字符把>和<替换掉,然后就没有问题了。 SELECT * FROM test WHERE 1 = 1 AND start_date &lt;= CURRENT_DATE AND end_date &gt;= CURRENT_DATE 附:XML转义字符 &lt;  <  小于号 &gt; >   大于号
似水的流年
2018/01/18
1.5K0

相似问题

在模型中小于或等于,小于或等于?

27

小于或等于

30

“大于或等于”和“小于或等于”

56

在XML中,什么是“大于等于”或“小于等于”?

45

在Coq中,等于意味着小于或等于。

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文