Linked Lists

LinkedList — реализует интерфейс List. Является представителем двунаправленного списка, где каждый элемент структуры содержит указатели на предыдущий и следующий элементы.

Итератор поддерживает обход в обе стороны. Реализует методы получения, удаления и вставки в начало, середину и конец списка. Позволяет добавлять любые элементы, в том числе и null.

Класс LinkedList -это обощенный класс со следующим объявлением.

class LinkedList<T>

T - тип сохраняемого объекта.Этот класс имеет следующие два конструктора:

LinkedList()
LinkedList(Collection<? extends E> c)

Мы можем использовать следующие методы при работе с данной коллекцией:

Для добавления элементов в начало списка:

addFirst() или offerFirst()

Для добавления элементов в конец списка:

addLast() или offerLast()

Чтобы получить первый элемент используют:

getFirst() или peekFirst()

Для удаления первого элемента можно использовать следующие методы:

removeFirst() или pollFirst()

Для удаления последнего элемента применяют:

removeLast() или pollLast()

Пример:

import java.util.*; 

class LinkedListExample { 
  public static void main(String args[]) { 

    LinkedList<String> list = new LinkedList<String>(); 

    // Add elements to the linked list. 
    list.add("F"); 
    list.add("B"); 
    list.add("D"); 
    list.add("E"); 
    list.add("C"); 
    list.addLast("Z"); 
    list.addFirst("A"); 

    System.out.println("Contents of list: " + list); 

    // Remove elements from the linked list. 
    list.remove("F"); 

    // Get and set a value. 
    String val = list.get(2); 
    list.set(2, val + " Changed"); 

    System.out.println("List after change: " + list); 
  } 
}

Вопрос 1.

Чем принципиально отличается LinkedList от ArrayList?

Вопрос 2.

Чем отличается метод offerFirst() от addFirst()?

Last updated