急,map的用法?
public List getTypeData(
HttpServletRequest req,
HttpServletResponse rep,
IErrorHandler errorHandler,
IMessageHandler messageHandler){
List list = DictItemHandle.listDictItemByTypeid(DictHandle.PROCESS_RESOURCE_TYPE);
Vector options = new Vector();
for(int i=0;i <list.size();i++){
Map map = (Map)list.get(i);
options.add(map);
}
System.out.println( "options======== "+options);
req.setAttribute( "restypeoptions ", options);
return list;
}
下面是输出的结果:
options========[{itemname=组织政策, itemid=ZD20060817115579},
itemname=规程集合, itemid=ZD2006081711557969658591123086256}
, itemid=ZD2006081711557970270931123086256}, {itemname=指南
1711557970465151123086256}, {itemname=工具集合, itemid=ZD20
23086256}, {itemname=检查单集合, itemid=ZD20060817115579709
mname=培训集合, itemid=ZD2006081711557971094371123086256}]
这是我输出的数据集合,怎么样才能把一条记录的itemname取出来,例如:{itemname=组织政策, itemid=ZD20060817115579}的itemname怎么取, 用list或map 怎么样写,能写出程序更好.
------解决方案--------------------如果你知道Map 的key固定直接用Map 的Object get(Object key)方法就可以取到key对应的值,如果你要取key本身(例如你的itemname)可以使用Iterator
例如:
Map m=new HashMap();
Set keys=m.keySet();
Iterator i=keys.iterator();
while(i.hasNext())
{
String key=(String)i.next();//取出第一个元素的key值
String value=(String)m.get(key);//取出key对应的value
}
------解决方案--------------------windstear 正解