读书人

java list remove步骤使用

发布时间: 2012-10-25 10:58:57 作者: rapoo

java list remove方法使用
for(int i = 0,n = ids.length;i<n;i++){int id = Integer.parseInt(ids[i]);for(int j =0;j <stockApplyDetailList.size();j++){WhStockapplydetail detail = stockApplyDetailList.get(j);System.out.println("id:"+id +"------detail:"+detail.getId());if(id == detail.getId()){stockApplyDetailList.remove(detail);}}}总是报数组下标异常,后来找了一下原因,是和list的remove方法有关,List每remove掉一个元素以后,后面的元素都会向前移动解决方法:倒过来遍历listfor(int i = 0,n = ids.length;i<n;i++){int id = Integer.parseInt(ids[i]);for(int j =stockApplyDetailList.size()-1;j >= 0;j--){WhStockapplydetail detail = stockApplyDetailList.get(j);System.out.println("id:"+id +"------detail:"+detail.getId());if(id == detail.getId()){stockApplyDetailList.remove(detail);}}}用这种方式就好了,呵呵

读书人网 >编程

热点推荐