MVEL2.0操作符

来源:互联网 发布:照片 转换绘画 软件 编辑:程序博客网 时间:2024/06/04 08:48

MVEL2.0操作符.(MVEL中字符串以单引号括起来:'这是字符串')

一元操作符:

Operator

Description

Example

new

创建实例

new String(‘foo’)

with

with块操作, 对某个实例进行多个操作的简写形式

with (value) { name = 'Foo', age = 18, sex = Sex.FEMALE }

assert

断言结果正确或失败

assert foo != null

isdef

检查变量是否已声明或定义,未定义返回false

isdef variableName

!

取反操作符

!true == false

比较操作符:

Operator

Description

Example

==

相等,字符串内容相同时也返回true,与java的’==‘是比较字符串的内存地址不同

‘foo’ == ‘foo’ 返回 true

!=

不相等

‘foo’ != ‘bar’ 返回 true

>

大于

2 > 1 返回 true

<

小于

1 < 2 返回 true

>=

大于等于

1 >= 1 返回 true

<=

小于等于

2 <= 2 返回 true

contains

包含,如果左边包含右边的字符串内容,返回true,否则返回false

var = ‘my Foobar’

var contains ‘Foo’

返回true

is or instanceof

实例类型检查,如果实例类型是右边的类型,返回true,否则返回false

var = new Integer();

var is Integer

var instanceof Integer

返回true

strsim

字符相似性

1.  ‘foo’ strsim ‘foo’,相似性: 1.00 (or 100%)

2.  ‘foobar’ strsim ‘foo’,相似性: 0.50 (or 50%)

3.  ‘bar0’ strsim ‘bar’,相似性: 0.75 (or 75%)

4.  ‘oobar’ strsim ‘bar’,相似性: 0.60 (or 60%)

soundslike

读音相似性

‘foobar’ soundslike ‘fubar’

 

 

逻辑操作符:

Operator

Description

Example

&&

逻辑与

foo && bar

||

逻辑或

foo || bar

or

链式或,检查2个以上的值,返回第一个不为null的值

foo or bar or barfoo or 'N/A'

~=

正则表达式测试.测试值是否符合右边正则表达式.符合返回true,否则返回false

foo ~= '[a-z].+'

位操作符:

Operator

Description

Example

&

按位与

foo & 5

|

按位或

foo | 5

^

按位XOR.

foo ^ 5

运算符:

Operator

Description

Example

+

加法

1 + 2

-

减法

2 - 1

/

除法

2 / 1

*

乘法

1 * 2

%

取模

2 % 1

其他操作符:

Operator

Description

Example

+

拼接字符串

'foo' + 'bar'

#

拼接数字,返回字符串,而不是将数值相加.

1 # 2 returns ' '

in

检查值是否存在于集合中,存在返回true,不存在返回false

(foo in list)

=

赋值语句

var = 'foobar'

 


原创粉丝点击