Java ArrayList remove() 方法

定义和用法

remove() 方法用于从列表中移除一个元素,可以通过位置也可以通过值来指定要移除的元素。如果指定了位置,则此方法返回被移除的元素。如果指定了值,则如果找到该值则返回 true,否则返回 false

如果指定了值,并且列表中有多个元素具有相同的值,则只会删除第一个出现的元素。

如果列表包含整数,并且你想根据值删除一个整数,则需要传递一个 Integer 对象。请参见下面的更多实例。

相关页面

教程:Java 数组

教程:Java ArrayList

实例

例子 1

从列表中移除元素:

import java.util.ArrayList;

public class Main { 
  public static void main(String[] args) { 
    ArrayList<String> cars = new ArrayList<String>();
    cars.add("Volvo");
    cars.add("BMW");
    cars.add("Ford");
    cars.add("Mazda");
    cars.remove(0); // 移除位置为0的元素
    System.out.println(cars);
  } 
}

亲自试一试

例子 2

通过位置和值从列表中移除整数:

import java.util.ArrayList;

public class Main { 
  public static void main(String[] args) { 
    ArrayList<Integer> list = new ArrayList<Integer>();
    list.add(5);
    list.add(8);
    list.add(9);
    list.add(1);

    list.remove(Integer.valueOf(1)); // 通过对象移除
    list.remove(1); // 通过索引移除

    System.out.println(list);
  }
}

亲自试一试

语法

以下之一:

public T remove(int index)
public boolean remove(Object item)

其中,T 表示列表中元素的数据类型。

参数

参数 描述
index 必需。要删除的元素的位置。
item 必需。要删除的元素的值。

技术细节

返回:

如果传递的是一个对象作为参数,则在列表中找到该对象时返回 true,否则返回 false

如果传递的是一个索引,则返回被移除的对象。

抛出: IndexOutOfBoundsException - 如果索引小于零、等于列表大小或大于列表大小。