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 參考。