您的位置:首页 > 大数据 > 云计算

09.属性访问

2015-06-15 21:18 246 查看
bean properties
     
     在前面的文档中可以了解到MVEL可以访问到对象的属性。比如user.name可以相当于Java中的user.getName()。

Null-Safe Bean Navigation

     有时,当你的表达式中会含有null元素时,这时就需要你进行一个为空判断,否则就会发生错误。当你使用null-safe操作符时你可以简化这个操作:user.?manager.name
它相当于:if (user.manager
!= null) { return user.manager.name;
} else { return null;
}

[align=left]              String expression = "user.?name";[/align]
[align=left]              User u = new User();[/align]
[align=left]               Map m = new HashMap();[/align]
[align=left]               m.put("user",u);[/align]
[align=left]              [/align]
[align=left]              Object obj = MVEL. eval(expression ,m);[/align]
集合

      集合的遍历也可以通过简单的语法来实现:
      List:可以像访问数组一样访问List,如:user[5],这等价与java代码中的user.get(5);
      Map:Map的访问和访问数组也非常相似,不同的是,在访问Map时索引值可以是任意对象,如:user["foobar"]这等价于java代码中的user.get("foobar");

      当Map的key是String类型时,还可以使用特殊的方式来访问,如:user.foobar,也就是允许你把map本身看成一个虚拟的对象,来访问其属性

字符串
     
     为了能使用属性的索引(迭代也是如此),所有的字符串都可以看成是一个数组,在MVEL中你可以用下面的方式来获取一个字符串变量的第一个字符:

foo = "My String";

foo[0]; // returns 'M'
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息