LinkedList
Двусвязный список: реализует и `List`, и `Deque`.
Доступно с: Java 1.2
Синтаксис
public class LinkedList<E> implements List<E>, Deque<E>Примеры
Добавление в начало и в конец:
void main() {
LinkedList<String> queue = new LinkedList<>();
queue.add("b");
queue.addFirst("a");
queue.addLast("c");
IO.println(queue);
IO.println(queue.removeFirst() + " " + queue);
}Результат:
[a, b, c]
a [b, c]Примечания
На практике LinkedList выбирают редко. Доступ по индексу get(i) проходит по цепочке узлов и медленный, а каждый элемент занимает больше памяти. Для списка обычно лучше ArrayList, для очереди или стека — ArrayDeque.
См. также
- ArrayList — Изменяемый список на основе массива — самая частая реализация `List`.
- ArrayDeque — Быстрая двусторонняя очередь на массиве — замена `Stack` и `LinkedList`.
- Deque — Двусторонняя очередь: добавлять и забирать можно с обоих концов.
- List.getFirst() — Возвращает первый или последний элемент упорядоченной коллекции.
В учебнике
- Списки: List и ArrayList — Списки в Java: ArrayList, добавление, чтение и удаление элементов, неизменяемые списки List.of и списки чисел.