1. 程式人生 > >03.MVEL基本語法-布林表示式

03.MVEL基本語法-布林表示式

MVEL可以用來表達一個布林表示式,比如user.name=='zhangsan'  ,a<100  。 MVEL的布林表示式和JAVA一樣有優先順序,包括通過括號來控制執行順序。 MVEL布林表示式的操作符如下:
操作符 說明 示例
== 比較兩個值是否相等
與java的字串記憶體地址比較不一樣
‘foo’=='foo'  
!= 不相等
> 大於
< 小於
>=
<=
contains 包含。如果左邊的字串包含右邊的字串內容,返回true
is/instanceof 例項型別檢查,如果例項型別是右邊的型別,返回true a = new Integer(1)
a is Integer
a instanceof Integer
返回true
strsim 字元相似性。
這個返回的資料,越相似值越接近1
"foo" strsim "foo"
返回1
sounds 讀音相似性,相似的話返回true ‘foobar’ soundslike ‘fubar’
~= 正則表示式測試 foo~='[a-z].+'
      以下通過幾個例子示範布林表示式
大於
Map m = new HashMap(); m.put("a", 100); Boolean obj = (Boolean) MVEL. eval("a>100", m); if(obj){          System. out.println("a大於100" ); }
 else{          System. out.println("a小於100" ); }
讀音相似性
String composite = "'foobar' soundslike 'fubar'"; Object obj = MVEL. eval(composite); System. out.println(obj);