Java: la clase LinkedList

La clase LinkedList extiende AbstractSequentialList e implementa la interfaz List. Proporciona una estructura de datos de lista enlazada.

A continuación se muestran los constructores admitidos por la clase LinkedList.

No Señor. Constructor y descripción
1

LinkedList( )

Este constructor crea una lista vinculada vacía.

2

LinkedList(Collection c)

Este constructor crea una lista vinculada que se inicializa con los elementos de la colección. c.

Además de los métodos heredados de sus clases principales, LinkedList define los siguientes métodos:

No Señor. Método y descripción
1

void add(int index, Object element)

Inserta el elemento especificado en el índice de posición especificado en esta lista. Lanza IndexOutOfBoundsException si el índice especificado está fuera de rango (índice <0 || índice> tamaño ()).

2

boolean add(Object o)

Agrega el elemento especificado al final de esta lista.

3

boolean addAll(Collection c)

Agrega todos los elementos de la colección especificada al final de esta lista, en el orden en que son devueltos por el iterador de la colección especificada. Lanza NullPointerException si la colección especificada es nula.

4

boolean addAll(int index, Collection c)

Inserta todos los elementos de la colección especificada en esta lista, comenzando en la posición especificada. Lanza NullPointerException si la colección especificada es nula.

5

void addFirst(Object o)

Inserta el elemento dado al principio de esta lista.

6

void addLast(Object o)

Agrega el elemento dado al final de esta lista.

7

void clear()

Elimina todos los elementos de esta lista.

8

Object clone()

Devuelve una copia superficial de esta LinkedList.

9

boolean contains(Object o)

Devuelve verdadero si esta lista contiene el elemento especificado. Más formalmente, devuelve verdadero si y solo si esta lista contiene al menos un elemento e tal que (o == null? E == null: o.equals (e)).

10

Object get(int index)

Devuelve el elemento en la posición especificada en esta lista. Lanza IndexOutOfBoundsException si el índice especificado está fuera de rango (índice <0 || índice> = tamaño ()).

11

Object getFirst()

Devuelve el primer elemento de esta lista. Lanza NoSuchElementException si esta lista está vacía.

12

Object getLast()

Devuelve el último elemento de esta lista. Lanza NoSuchElementException si esta lista está vacía.

13

int indexOf(Object o)

Devuelve el índice en esta lista de la primera aparición del elemento especificado, o -1 si la lista no contiene este elemento.

14

int lastIndexOf(Object o)

Devuelve el índice en esta lista de la última aparición del elemento especificado, o -1 si la lista no contiene este elemento.

15

ListIterator listIterator(int index)

Devuelve un iterador de lista de los elementos de esta lista (en la secuencia adecuada), comenzando en la posición especificada en la lista. Lanza IndexOutOfBoundsException si el índice especificado está fuera de rango (índice <0 || índice> = tamaño ()).

dieciséis

Object remove(int index)

Elimina el elemento en la posición especificada en esta lista. Lanza NoSuchElementException si esta lista está vacía.

17

boolean remove(Object o)

Elimina la primera aparición del elemento especificado en esta lista. Lanza NoSuchElementException si esta lista está vacía. Lanza IndexOutOfBoundsException si el índice especificado está fuera de rango (índice <0 || índice> = tamaño ()).

18

Object removeFirst()

Elimina y devuelve el primer elemento de esta lista. Lanza NoSuchElementException si esta lista está vacía.

19

Object removeLast()

Elimina y devuelve el último elemento de esta lista. Lanza NoSuchElementException si esta lista está vacía.

20

Object set(int index, Object element)

Reemplaza el elemento en la posición especificada en esta lista con el elemento especificado. Lanza IndexOutOfBoundsException si el índice especificado está fuera de rango (índice <0 || índice> = tamaño ()).

21

int size()

Devuelve el número de elementos de esta lista.

22

Object[] toArray()

Devuelve una matriz que contiene todos los elementos de esta lista en el orden correcto. Lanza NullPointerException si la matriz especificada es nula.

23

Object[] toArray(Object[] a)

Devuelve una matriz que contiene todos los elementos de esta lista en el orden correcto; el tipo de tiempo de ejecución de la matriz devuelta es el de la matriz especificada.

Ejemplo

El siguiente programa ilustra varios de los métodos admitidos por LinkedList:

import java.util.*;
public class LinkedListDemo {

   public static void main(String args[]) {
      // create a linked list
      LinkedList ll = new LinkedList();
      
      // add elements to the linked list
      ll.add("F");
      ll.add("B");
      ll.add("D");
      ll.add("E");
      ll.add("C");
      ll.addLast("Z");
      ll.addFirst("A");
      ll.add(1, "A2");
      System.out.println("Original contents of ll: " + ll);

      // remove elements from the linked list
      ll.remove("F");
      ll.remove(2);
      System.out.println("Contents of ll after deletion: " + ll);
      
      // remove first and last elements
      ll.removeFirst();
      ll.removeLast();
      System.out.println("ll after deleting first and last: " + ll);

      // get and set a value
      Object val = ll.get(2);
      ll.set(2, (String) val + " Changed");
      System.out.println("ll after change: " + ll);
   }
}

Esto producirá el siguiente resultado:

Salida

Original contents of ll: [A, A2, F, B, D, E, C, Z]
Contents of ll after deletion: [A, A2, D, E, C, Z]
ll after deleting first and last: [A2, D, E, C]
ll after change: [A2, D, E Changed, C]