for循环中移除元素问题,for循环移除元素
java list移除添加元素操作
for循环中移除元素一般会报错
java.util.ConcurrentModificationException
还是建议用iterator
之前自己写过有个逻辑用到了类似结构没报错 ,for循环中加了break所以被改变的list不会访问第二次也就不会报错了。
逻辑是如果存在对象移动到第一位,大致结构如下
for (User item : list) {
if ("佩奇 ".equals(item.getName())) { // 移出第一位不会有问题
list.remove(item);
list.add(0, item);
break; //跳出循环
}
}
还有一种方式移除元素利用下标
for(int i =0;i<list.size();i++){
if(i%2==0){
list.remove(list.get(i));
}
}
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。