当Map中是String,String时
Map<String, String> map = new HashMap<String, String>();
map.put(“x”, “1”);
map.put(“y”, “2”);
map1.put(“z”, “3”);
前台jsp 中使用EL获取Map:
使用
m
a
p
[
"
x
"
]
或
{map["x"]}或
map["x"]或{map.x}取值
${map[“x”]}
${map.x}
输出为:
1
1
使用jstl的标签取值
<c:forEach items="${map}" var=“item”>
key:<c:out value="${item.key}" />
value:<c:out value="${item.value}" />
</c:forEach>
输出为:
key:x value:1
key:y value:2
key:z value:3
当Map中是Integer,String时
后台servlet中:
HashMap<Integer, String> map2 = new HashMap<Integer, String>();
map2.put(1, "b");
map2.put(2, "bb");
map2.put(3, "bbb");
前台jsp 中使用EL获取Map:
使用
m
a
p
2
[
1
]
或
{map2[1]}或
map2[1]或{map2[“1”]},不可以获取到值,使用
m
a
p
2.1
取
值
会
报
错
。
当
M
a
p
中
的
k
e
y
类
型
为
L
o
n
g
时
,
可
以
使
用
{map2.1}取值会报错。当Map中的key类型为Long时,可以使用
map2.1取值会报错。当Map中的key类型为Long时,可以使用{map2[1]}取到值
使用jstl的标签取值,与Map中存放String,String时一样,可以取到值