当前位置: 代码迷 >> J2EE >> 能把map的key设置为一个对象吗?该怎么处理
  详细解决方案

能把map的key设置为一个对象吗?该怎么处理

热度:82   发布时间:2016-04-22 01:40:18.0
能把map的key设置为一个对象吗?
譬如:
  List<Module> parent = moduleBiz.findAllModule(0);

for (int i = 0; i < parent.size(); i++) {

List<Module> children= moduleBiz.findAllModule(parent.get(i)
.getModuleid());

map.put(parent.get(i), children);

}
  session.put("map",map);

可以这样做不?
如果可以,那在jsp页面中该如何获得该map的key(Module对象)的modulename属性?

------解决方案--------------------
何必呢..你把这个parent的对象的name或者id(应该有这些字段吧..?) 作key也好的呀
------解决方案--------------------
可以的,put方法的两个参数都是object的
------解决方案--------------------
如果没有用泛型,获取到value之后强转一下。

用了泛型取到的value就是你要的类型!
------解决方案--------------------
可以,但是Module必须实现equals和hashCode方法!在jsp页面中循环该map直接用el表达式{key.modulename}取值
------解决方案--------------------
[Quote=引用:]

可以的,put方法的两个参数都是object的
[/Quote]
Map <K,V>
  相关解决方案