List:
1
冲数据库查出的多条记录的保存形式为:
list= [
{STATEDESC=null, STATE=2, ZONE_CODE=2, UUID=5, NODE_CODE=0 , COLLECTTIME=2011-02-16 00:00:00.0},
{STATEDESC=null, STATE=1, ZONE_CODE=2, UUID=2, NODE_CODE=3 , COLLECTTIME=2011-02-16 00:00:00.0}
];
list.get(0) = {STATEDESC=null, STATE=1, ZONE_CODE=1, UUID=4, NODE_CODE=0 , COLLECTTIME=2011-02-16 00:00:00.0}
list.get(1) = {STATEDESC=null, STATE=1, ZONE_CODE=1, UUID=1, NODE_CODE=3 , COLLECTTIME=2011-02-16 00:00:00.0}
每个都为一条记录,如果想取取某个值的话就没办法(比如第一条记录的字段ZONE_CODE的值为1),这时候就该考虑把list里的值放到map里面
HashMap hm = new HashMap(); //创建一个map
Iterator iterator = list.iterator();// list得到迭代器
while (iterator.hasNext()) { //通过迭代器遍历
Map row = (Map) iterator.next();//分别把第一条和第二条记录放到map里面,就成了键值对的形式了,就可以按照如下的方式取值了
}
这个时候就可以通过row.get("ZONE_CODE");就可以取到值了。
2
list的值也可是这种形式:如:list= [vo1,vo2]
list = [
cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.MonitorGMDVO@3d0426,
cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.MonitorGMDVO@1db8f3a
]
list1.get(2) = cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.MonitorGMDVO@1db8f3a
(TempDataRegionVO)list1.get(2) = cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.MonitorGMDVO@1db8f3a
3
map
maprow= {STATEDESC=null, STATE=1, ZONE_CODE=3, UUID=6, NODE_CODE=0 , COLLECTTIME=2011-02-16 00:00:00.0}//对应1里面的list的值
hm.put(node_code, vo);
hm= {0 =cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.FullMeshNodeStateMonitorVO@1de41c3}
hm= {0 =cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.FullMeshNodeStateMonitorVO@1de41c3,
3 =cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.FullMeshNodeStateMonitorVO@af9d74}
hm= {0 =cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.FullMeshNodeStateMonitorVO@18a5d49}
4
map遍历
for(int i=0;i<hm1.keySet().toArray().length;i++){
String key = (String)hm1.keySet().toArray()[i];
FullMeshNodeStateMonitorVO vo = (FullMeshNodeStateMonitorVO)hm1.get(key);
System.out.println("status is ==="+vo.getStatedesc());
}
1
冲数据库查出的多条记录的保存形式为:
list= [
{STATEDESC=null, STATE=2, ZONE_CODE=2, UUID=5, NODE_CODE=0 , COLLECTTIME=2011-02-16 00:00:00.0},
{STATEDESC=null, STATE=1, ZONE_CODE=2, UUID=2, NODE_CODE=3 , COLLECTTIME=2011-02-16 00:00:00.0}
];
list.get(0) = {STATEDESC=null, STATE=1, ZONE_CODE=1, UUID=4, NODE_CODE=0 , COLLECTTIME=2011-02-16 00:00:00.0}
list.get(1) = {STATEDESC=null, STATE=1, ZONE_CODE=1, UUID=1, NODE_CODE=3 , COLLECTTIME=2011-02-16 00:00:00.0}
每个都为一条记录,如果想取取某个值的话就没办法(比如第一条记录的字段ZONE_CODE的值为1),这时候就该考虑把list里的值放到map里面
HashMap hm = new HashMap(); //创建一个map
Iterator iterator = list.iterator();// list得到迭代器
while (iterator.hasNext()) { //通过迭代器遍历
Map row = (Map) iterator.next();//分别把第一条和第二条记录放到map里面,就成了键值对的形式了,就可以按照如下的方式取值了
}
这个时候就可以通过row.get("ZONE_CODE");就可以取到值了。
2
list的值也可是这种形式:如:list= [vo1,vo2]
list = [
cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.MonitorGMDVO@3d0426,
cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.MonitorGMDVO@1db8f3a
]
list1.get(2) = cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.MonitorGMDVO@1db8f3a
(TempDataRegionVO)list1.get(2) = cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.MonitorGMDVO@1db8f3a
3
map
maprow= {STATEDESC=null, STATE=1, ZONE_CODE=3, UUID=6, NODE_CODE=0 , COLLECTTIME=2011-02-16 00:00:00.0}//对应1里面的list的值
hm.put(node_code, vo);
hm= {0 =cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.FullMeshNodeStateMonitorVO@1de41c3}
hm= {0 =cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.FullMeshNodeStateMonitorVO@1de41c3,
3 =cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.FullMeshNodeStateMonitorVO@af9d74}
hm= {0 =cn.gov.cma.cimiss.gds.dataservices.monitorsystem.vo.FullMeshNodeStateMonitorVO@18a5d49}
4
map遍历
for(int i=0;i<hm1.keySet().toArray().length;i++){
String key = (String)hm1.keySet().toArray()[i];
FullMeshNodeStateMonitorVO vo = (FullMeshNodeStateMonitorVO)hm1.get(key);
System.out.println("status is ==="+vo.getStatedesc());
}