首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

ArrayList<地图>怎么移除指定的元素

2013-06-19 
ArrayListmap如何移除指定的元素1。ArrayListMap是这样的。[{ID0}, {ORDERNUMBER系统订单号}, {CUST

ArrayList<map>如何移除指定的元素
1。ArrayList<Map>是这样的。
[{ID=0}, {ORDERNUMBER='系统订单号'}, {CUSTOMERORDER='客户订单号'}]
2。要删除的是这些元素,即
ArrayList<String> kill=new ArrayList<String>();
kill.add("ID");
kill.add("ORDERNUMBER");
kill.add("123");

kill.add("CUSTOMER");

3。得到的结果,应该是这样的。
 {CUSTOMERORDER='客户订单号'}//因为只有此元素不在要移除的那个kill范围中。
4。请问如何实现,谢谢!!!!
[解决办法]
遍历remove不就可以吗?
[解决办法]
请楼主把需求说详细点,表示看不懂啊。
[解决办法]
假设你的ArrayList<Map>对象是 listMap ;
ArrayList<Map> newListMap = new ArrayList<Map>();
for(int k=0;k<kill.size();k++){
for(int i=0;i<listMap.size();i++){
    Map map = (Map)listMap.get(i);
    if(map.containsKey(kill.get(k))){
      newListMap.add(map);
}
}
listMap.removeAll(newListMap);
}
[解决办法]
最简单的写法

Map<String, String> map = new HashMap<String, String>();
map.put("ID", "0");
map.put("ORDERNUMBER", "系统订单号");
map.put("CUSTOMERORDER", "客户订单号");

List<String> kill = new ArrayList<String>();
kill.add("ID");
kill.add("ORDERNUMBER");
kill.add("123");

for (int i = 0; i < kill.size(); i++) {
if (map.containsKey(kill.get(i))) {
map.remove(kill.get(i));
}
}

System.out.println(map);

热点排行