java 怎么删除List中的指定元素

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 怎么删除List中的指定元素相关的知识,希望对你有一定的参考价值。

现在有一个List,我要删除里面所有的 "o" ,而且我不知道位置,怎么删除?

主要有三种方法:

    用一个List 记录要删除的数据,最后removeAll(List);

    用for循环遍历,原始书写方式;

    用迭代器自带的remove方法,这也是官方推荐的方法。

参考技术A

从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),所以,下一个需要访问的下标还是当前下标,所以必须得减一才能把所有元素都遍历完。

参考技术B 亲们:多个制定元素标准方法如下。
public class test
public static void main(String[] args)
String str="部,部,机关1,机关2,基层1,基层2";
String[] arr=str.split(",");
List<String> list=Lists.newArrayList(arr);
Iterator<String> it=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());

参考技术C Java 循环删除list中指定元素

1.for循环遍历删除指定元素
2.增强for循环删除指定元素
3.iterator删除指定元素
参考技术D 既然你不知道他的位置

用个for循环吧 int i ;int j=list.size() 然后循环的遍历list里面的值,在for循环里面搞个if判断
判断条件就是if(Arraylist(i)=="o")

Arraylist.remove(i)

能明白我的意思吗?

以上是关于java 怎么删除List中的指定元素的主要内容,如果未能解决你的问题,请参考以下文章

java中怎么删除数组中的元素?

java中怎么删除数组中的元素

如何在list 中删除指定元素

Python:如果想要删除list中的list中的元素该怎么做呢?

java中list怎么添加元素?

java如何获得集合里面某个元素的下标