如何从Java中的ArrayList中删除元素?

有三种方法可以从Java中的ArrayList中删除元素。

  • 使用remove(index) -此方法获取ArrayList的索引,并从ArrayList中删除所需的元素。

  • 使用remove(Object) -此方法获取ArrayList的对象并将其从ArrayList中删除。

  • 使用Iterator.remove() -此方法删除元素而不会引起ConcurrentModificationException。

示例

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Tester{
   public static void main(String[] args) {
      List<Integer> list = new ArrayList<>();
      list.add(1);
      list.add(2);
      list.add(3);
      list.add(4);
      list.add(5);
      list.add(6);

      System.out.println(list);
      //按索引删除
      list.remove(5);
      System.out.println(list);

      //按对象删除
      list.remove(new Integer(5));

      //使用迭代器删除
      Iterator<Integer> iterator = list.iterator();

      while(iterator.hasNext()){
         if(iterator.next() == 4){
            iterator.remove();
         }
      }
      System.out.println(list);
   }
}

输出结果

[1, 2, 3, 4, 5, 6]
[1, 2, 3, 4, 5]
[1, 2, 3]