怎么通过条件删除list 里面的元素

2025-04-27 06:53:52
推荐回答(1个)
回答1:

从list中删除指定元素可以使用remove方法来实现:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

ArrayList al = new ArrayList();

al.add("a");

al.add("b");

//al.add("b");

//al.add("c");

//al.add("d");

for (int i = 0; i < al.size(); i++) {

if (al.get(i) == "b") {

al.remove(i);

i--;

}

}

在代码中,删除元素后,需要把下标减一。这是因为在每次删除元素后,ArrayList会将后面部分的元素依次往上挪一个位置(就是copy),所以,下一个需要访问的下标还是当前下标,所以必须得减一才能把所有元素都遍历完。