主要有三种方法:
用一个List 记录要删除的数据,最后removeAll(List);
用for循环遍历,原始书写方式;
用迭代器自带的remove方法,这也是官方推荐的方法。
从list中删除指定元素可以使用remove方法来实现:
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),所以,下一个需要访问的下标还是当前下标,所以必须得减一才能把所有元素都遍历完。
亲们:多个制定元素标准方法如下。
public class test {
public static void main(String[] args) {
String str="部,部,机关1,机关2,基层1,基层2";
String[] arr=str.split(",");
List
Iterator
while(it.hasNext()) {
String x = it.next();//这部绝对不能省略,it.next()在while里面执行的一次的时候只能调用一次,多次调用就不对了
if(x.equals("部")) {
System.out.println(x);
it.remove();
}
if(x.equals("机关1")) {
System.out.println(x);
it.remove();
}
}
System.out.println(list.size());
}
}
Java 循环删除list中指定元素
1.for循环遍历删除指定元素
2.增强for循环删除指定元素
3.iterator删除指定元素
既然你不知道他的位置
用个for循环吧 int i ;int j=list.size() 然后循环的遍历list里面的值,在for循环里面搞个if判断
判断条件就是if(Arraylist(i)=="o")
{
Arraylist.remove(i)
}
能明白我的意思吗?