1在对集合进行迭代的时候删除其中的元素最好使用迭代器Iterator的remove方法进行删除
Iterator
ite=listiterator();
while(itehasNext()){
Object
o=itenext();
if(/
此处写你希望满足的删除条件
/)
iteremove();
}
2
不能在对一个List进行遍历的时候将其中的元素删除掉解决办法是你可以先将要删除的元素用另一个list装起来等遍历结束再remove掉
List
delList
=
new
ArrayList();//用来装需要删除的元素
for(Information
ia:list)
if(iagetId()==k){
n++;
delListadd(ia);
}
listremoveAll(delList);//遍历完成后执行删除
3
这里的for循环没有涉及到迭代器,也就没有对集合是否发生改变进行判断,所以不会抛出异常
for(int
i=0;i<listsize();i++){
String
str=listget(i);
if("bbb"equals(str)){
listremove(str);
}
}
望采纳
删除,你得确保你的随机数,是否超过了ArrayList的长度
import javautilArrayList;import javautilRandom;
public class RemoDemo {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
listadd("天涯");
listadd("明月");
Random random = new Random();
int r = randomnextInt(2);
Systemoutprintln("随机下标是"+r);// 输出随机数字
// listremove(r);//如果这个随机数字。大于了list的长度。那么就会下标越界
// 应该先判断是否越界,然后再删除
if (r < listsize()) {
String ss = listremove(r);//按照下标进行删除
Systemoutprintln("删除了"+ss);
}
boolean b = listremove("ABC");//按照元素进行删除
Systemoutprintln(b "ABC删除成功" : "ABC删除失败");
}
}随机下标是0
删除了天涯
ABC删除失败
欢迎分享,转载请注明来源:品搜搜测评网