购物车用HashMap怎么逐个清空

来源:百度知道 编辑:UC知道 时间:2024/06/23 00:10:48

代码如下:
建议
1、不建议在遍历MAP的同时删除其中内容,这样会造成MAP实际长度变短
2、首先将需要清除的ID记录在LIST中,然后对该LIST进行遍历的时候再删除
3、建议处理Map和List的时候使用迭代器iterator,这样效率会高些

ArrayList keyList = new ArrayList();
Set keyset = map.keySet();
Object[] keys = keyset.toArray();
for (int i = 0; i < keys.length; i++) {
if (id == ((CartItemBean) map.get(keys[i])).getBook().getBookId()) {
keyList.add(keys[i]);
}
}
for(Iterator it = keyList.iterator();it.hasNext();){
Object key = it.next();
map.remove(key);
}

用 ArrayList做