Java LinkedList
Java LinkedList
在上一章中,您学习了有关 ArrayList
类。 LinkedList
类几乎与 ArrayList
类相同。
示例
// Import the LinkedList class
import java.util.LinkedList;
public class Main {
public static void main(String[] args) {
LinkedList<String> cars = new LinkedList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
System.out.println(cars);
}
}
ArrayList vs. LinkedList
LinkedList
类是一个可以包含许多相同类型对象的集合,就像 ArrayList
一样。
LinkedList
类具有与 ArrayList
类相同的所有方法,因为它们都实现了 List
接口。这意味着您可以以相同的方式添加项目、更改项目、删除项目和清除列表。
但是,尽管 ArrayList
类和 LinkedList
类可以用相同的方式使用,但它们的构建方式却大不相同。
ArrayList 的工作原理
ArrayList
类在其内部有一个常规数组。当添加元素时,它会被放置到数组中。如果数组不够大,则会创建一个新的更大的数组来替换旧的数组,并且旧的数组会被删除。
LinkedList 的工作原理
LinkedList
将其项目存储在“容器”中。该列表链接到第一个容器,每个容器链接到列表中的下一个容器。要向列表中添加元素,元素将被放置到一个新的容器中,并且该容器链接到列表中的其他容器之一。
何时使用
使用 ArrayList
存储和访问数据,以及 LinkedList
操作数据。
LinkedList 方法
在许多情况下, ArrayList
更有效,因为通常需要访问列表中的随机项目,但 LinkedList
提供了几种方法来更有效地执行某些操作。
方法 | 描述 | 试试 |
---|---|---|
addFirst() | 将项目添加到列表的开头 | 试试 » |
addLast() | 将项目添加到列表的末尾 | 试试 » |
removeFirst() | 从列表的开头删除项目 | 试试 » |
removeLast() | 从列表的末尾删除项目 | 试试 » |
getFirst() | 获取列表开头的项目 | 试试 » |
getLast() | 获取列表末尾的项目 | 试试 » |
完整的 LinkedList 参考
有关 LinkedList 方法的完整参考,请访问我们的 Java LinkedList 参考。