使用普通for循环和增强for(已尝试),都会报异常,要使用Iterator进行遍历删除
直接看代码
List<Advertisinginfo> advertisinginfos = new ArrayList<>();
advertisinginfos = selectInfoByPlayType(play_type);
Iterator<Advertisinginfo> adIter = advertisinginfos.iterator();
while (adIter.hasNext()) {
Advertisinginfo advertisinginfo = adIter.next();
if(judgePlayCount(advertisinginfo.getId())){
long playCount = playCount(advertisinginfo.getId());
if (playCount >= advertisinginfo.getMaxWatchCount()) {
adIter.remove();
}
}
}
int size = advertisinginfos.size();
通过查看size大小就可以判断是否成功了