Класс LinkedList
Класс LinkedList является реализацией интерфейса MutableList
и представляет собой двусвязный список, где каждый элемент содержит
ссылку на предыдущий и следующий элемент. Это позволяет эффективно
добавлять и удалять элементы как в начале, так и в конце списка.
В первый параметр конструктора можно передать коллекцию элементов
для инициализации списка.
Импорт
import java.util.LinkedList
Синтаксис
LinkedList()
LinkedList(elements: Collection<E>)
Пример
Создадим пустой LinkedList и добавим в него элементы:
val list = LinkedList<String>()
list.add("a")
list.add("b")
list.add("c")
println(list)
Результат выполнения кода:
LinkedList ['a', 'b', 'c']
Пример
Создадим LinkedList из существующей коллекции:
val initialList = listOf(1, 2, 3, 4, 5)
val linkedList = LinkedList(initialList)
println(linkedList)
Результат выполнения кода:
LinkedList [1, 2, 3, 4, 5]
Пример
Добавим элементы в начало и конец списка:
val list = LinkedList<String>()
list.addFirst("first")
list.addLast("last")
list.add(1, "middle")
println(list)
Результат выполнения кода:
LinkedList ['first', 'middle', 'last']
Пример
Удалим элементы из начала и конца списка:
val list = LinkedList(listOf("a", "b", "c", "d", "e"))
val first = list.removeFirst()
val last = list.removeLast()
println("Removed: $first, $last")
println("Remaining: $list")
Результат выполнения кода:
Removed: a, e
Remaining: [b, c, d]
Пример
Получим первый и последний элемент без удаления:
val list = LinkedList(listOf(10, 20, 30, 40, 50))
val first = list.first
val last = list.last
println("First: $first, Last: $last")
println("List unchanged: $list")
Результат выполнения кода:
First: 10, Last: 50
List unchanged: [10, 20, 30, 40, 50]
Смотрите также
-
интерфейс
List,
который представляет неизменяемый список элементов -
интерфейс
MutableList,
который представляет изменяемый список элементов -
класс
ArrayList,
который представляет список на основе массива -
класс
ArrayDeque,
который представляет двустороннюю очередь на основе массива