跳到主要内容

Java ArrayList remove() 方法

remove() 方法从 arraylist 中移除单个元素。

示例

import java.util.ArrayList;

class Main {
public static void main(String[] args) {
// 创建一个 ArrayList
ArrayList<Integer> primeNumbers = new ArrayList<>();
primeNumbers.add(2);
primeNumbers.add(3);
primeNumbers.add(5);
System.out.println("ArrayList: " + primeNumbers);

// 移除索引为 2 的元素
int removedElement = primeNumbers.remove(2);

System.out.println("移除的元素:" + removedElement);
}
}

// 输出:ArrayList: [2, 3, 5]
// 移除的元素:5

ArrayList remove() 的语法

remove() 方法的语法是:

// 移除指定元素
arraylist.remove(Object obj)

// 移除指定索引处的元素
arraylist.remove(int index)

这里,arraylistArrayList 类的一个对象。

remove() 参数

remove() 方法接受单一参数。

  • obj - 要从 arraylist 中移除的元素,或者
  • index - 要移除元素的位置

如果相同的元素 obj 在多个位置出现,则移除在 arraylist 中首次出现的那个元素。

remove() 返回值

  • 如果指定元素存在于 arraylist 中,则返回 true
  • 如果作为参数传递了 index,则返回被移除的元素

注意:如果指定的索引超出范围,该方法将抛出 IndexOutOfBoundsException

示例 1:从 ArrayList 中移除指定元素

import java.util.ArrayList;

class Main {
public static void main(String[] args) {
// 创建一个 ArrayList
ArrayList<String> languages = new ArrayList<>();

// 向 arraylist 添加元素
languages.add("JavaScript");
languages.add("Java");
languages.add("Python");
System.out.println("ArrayList: " + languages);

// 移除元素 Java
boolean result = languages.remove("Java");

System.out.println("元素 Java 是否被移除? " + result);
System.out.println("调用 remove() 后的 ArrayList:" + languages);
}
}

输出

ArrayList: [JavaScript, Java, Python]
元素 Java 是否被移除? true
调用 remove() 后的 ArrayList[JavaScript, Python]

在上面的示例中,我们创建了一个名为 languages 的 arraylist。这个 arraylist 存储了编程语言的名称。在这里,我们使用了 remove() 方法从 arraylist 中移除元素 Java

示例 2:从指定位置移除元素

import java.util.ArrayList;

class Main {
public static void main(String[] args) {
// 创建一个 ArrayList
ArrayList<String> languages = new ArrayList<>();

// 向 arraylist 添加元素
languages.add("JavaScript");
languages.add("Java");
languages.add("Python");
System.out.println("ArrayList: " + languages);

// 从位置 2 移除元素
String element = languages.remove(2);

System.out.println("调用 remove() 后的 ArrayList:" + languages);
System.out.println("移除的元素:" + element);
}
}

输出

ArrayList: [JavaScript, Java, Python]
调用 remove() 后的 ArrayList[JavaScript, Java]
移除的元素:Python

在上面的示例中,我们创建了一个名为 languages 的 arraylist。注意表达式,

languages.remove(2)

这里,remove() 返回并移除了位置 2(即 Python)上的元素。

示例 3:移除元素的第一次出现

import java.util.ArrayList;

class Main {
public static void main(String[] args) {
// 创建一个 ArrayList
ArrayList<Integer> randomNumbers = new ArrayList<>();

// 向 arraylist 添加元素
randomNumbers.add(22);
randomNumbers.add(13);
randomNumbers.add(35);
randomNumbers.add(13);
randomNumbers.add(40);
System.out.println("ArrayList: " + randomNumbers);

// 移除第一次出现的 13
boolean result = randomNumbers.remove(Integer.valueOf(13));

System.out.println("元素 13 是否被移除? " + result);
System.out.println("调用 remove() 后的 ArrayList:" + randomNumbers);
}
}

输出

ArrayList: [22, 13, 35, 13, 40]
元素 13 是否被移除? true
调用 remove() 后的 ArrayList[22, 35, 13, 40]

在上面的示例中,我们创建了一个名为 randomNumbers 的 arraylists 。在这个 arraylist 中,元素 13 出现在两个位置。注意这一行,

randomNumbers.remove(Integer.valueOf(13))

这里,

  • Integer.valueOf() - 将 int13 转换为 Integer 对象。这是因为 remove() 方法只接受对象作为其参数。要了解更多,请访问 Java 基本类型转换为包装对象
  • remove() - 移除 arraylist 中第一次出现的元素 13

注意:我们也可以使用 clear() 方法移除 arraylist 中的所有元素。要了解更多,请访问 Java ArrayList clear()