阅读量:72
要从Java中的有序链表(例如 LinkedList)中删除元素,您可以使用以下方法之一:
-
使用
remove()方法删除指定位置的元素:LinkedListlist = new LinkedList (); list.add("one"); list.add("two"); list.add("three"); // 删除位置为1的元素 list.remove(1); -
使用
removeFirst()或removeLast()方法删除链表的第一个或最后一个元素:LinkedListlist = new LinkedList (); list.add("one"); list.add("two"); list.add("three"); // 删除第一个元素 list.removeFirst(); // 删除最后一个元素 list.removeLast(); -
使用
remove(Object o)方法删除指定值的元素。此方法将删除链表中首次出现的指定元素(从头到尾遍历链表):LinkedListlist = new LinkedList (); list.add("one"); list.add("two"); list.add("three"); // 删除值为"two"的元素 list.remove("two"); -
使用迭代器(
Iterator)遍历链表并删除指定元素:import java.util.Iterator; import java.util.LinkedList; public class Main { public static void main(String[] args) { LinkedListlist = new LinkedList (); list.add("one"); list.add("two"); list.add("three"); // 创建迭代器 Iterator iterator = list.iterator(); // 遍历链表并删除值为"two"的元素 while (iterator.hasNext()) { String element = iterator.next(); if (element.equals("two")) { iterator.remove(); } } } }
请注意,使用 Iterator 删除元素时,务必使用 Iterator 的 remove() 方法,而不是 LinkedList 的 remove() 方法,因为这样可以避免在遍历过程中对链表结构进行修改。