锁定老帖子 主题:EL表达式Map取值的隐含问题
精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (1)
|
|
---|---|
作者 | 正文 |
发表时间:2011-04-27
俺一般key用string,不用int
|
|
返回顶楼 | |
发表时间:2011-05-12
asd491310 写道 谢放LZ,这东西没用过,以后用的时候得注意,这样说,那JSP中数字默认是long型,而不是int型 了
这个你准备怎么验证呢? |
|
返回顶楼 | |
发表时间:2011-06-22
一般很少用到以经本类型为key的情况 通常都是String类型
|
|
返回顶楼 | |
发表时间:2011-09-22
正在学习这个,好东西啊
|
|
返回顶楼 | |
发表时间:2011-09-23
以后用到了要注意了
|
|
返回顶楼 | |
发表时间:2011-10-08
sswh 写道 liuhanjun 写道 在jsp页面中${numberMap[1]}将取不到值,因为el表达式中数字1是Long类型(好BT啊,都没加L啊),无法匹配到numberMap中的Integer 1 。 你用的是struts2吗? struts2的OGNL测试: public static void main(String[] args) throws OgnlException { Map map = new HashMap(); map.put(1, "aaa"); map.put(2L, "bbb"); Object o = Ognl.getValue("[1]+','+[2]+','+[2L]", map); System.out.println(o); } 运行结果是: 引用 aaa,null,bbb
结果和你的结论恰好相反。 我说的是jsp中的el表达式取值,貌似跟你说的不是一码事哈 |
|
返回顶楼 | |
发表时间:2011-10-22
akunamotata 写道 “因为el表达式中数字1是Long类型”
那其他的都是int类型么?“0”也是... 0应该是吧,在内存里的样子和外面不同。 |
|
返回顶楼 | |
发表时间:2011-11-21
原来是这样的啊
|
|
返回顶楼 | |
发表时间:2011-11-21
非常感谢LZ、细节啊
|
|
返回顶楼 | |
发表时间:2011-12-01
学习了,还真没这么用过。 都是把map的key写成字符类型的。 以后注意了。
|
|
返回顶楼 | |