页面用el 表达式 获取map中的值
@Controller 层
@@RequestMapping()
private String a(Map map){
if(){
map = 从service层获取的map
}
这样写 在页面获取不到map 中的值
问题我已经解决了
不能用 map = map1
用map.putAll(map1) 解决了
但是为什么用 map = map1 就不行?
求大神解答
深拷贝和浅拷贝的问题。这篇文章还可以http://www.dutycode.com/map_kaobei_shenkaobei_qiankaobei.html
你函数里面改变的是Map参数的引用,但是你传过来的是map实参的引用,map = map1只是改变了map在函数参数中的引用,并没改变你调用a方法所定义实参的值。而put是操作的实参的值。