Java - La classe LinkedList
La classe LinkedList étend AbstractSequentialList et implémente l'interface List. Il fournit une structure de données de liste chaînée.
Voici les constructeurs pris en charge par la classe LinkedList.
N ° Sr. | Constructeur et description |
---|---|
1 | LinkedList( ) Ce constructeur construit une liste chaînée vide. |
2 | LinkedList(Collection c) Ce constructeur construit une liste chaînée qui est initialisée avec les éléments de la collection c. |
Outre les méthodes héritées de ses classes parentes, LinkedList définit les méthodes suivantes -
N ° Sr. | Méthode et description |
---|---|
1 | void add(int index, Object element) Insère l'élément spécifié à l'index de position spécifié dans cette liste. Lève une exception IndexOutOfBoundsException si l'index spécifié est hors plage (index <0 || index> size ()). |
2 | boolean add(Object o) Ajoute l'élément spécifié à la fin de cette liste. |
3 | boolean addAll(Collection c) Ajoute tous les éléments de la collection spécifiée à la fin de cette liste, dans l'ordre dans lequel ils sont renvoyés par l'itérateur de la collection spécifiée. Lève NullPointerException si la collection spécifiée est null. |
4 | boolean addAll(int index, Collection c) Insère tous les éléments de la collection spécifiée dans cette liste, en commençant à la position spécifiée. Lève NullPointerException si la collection spécifiée est null. |
5 | void addFirst(Object o) Insère l'élément donné au début de cette liste. |
6 | void addLast(Object o) Ajoute l'élément donné à la fin de cette liste. |
sept | void clear() Supprime tous les éléments de cette liste. |
8 | Object clone() Renvoie une copie superficielle de cette LinkedList. |
9 | boolean contains(Object o) Renvoie true si cette liste contient l'élément spécifié. Plus formellement, renvoie true si et seulement si cette liste contient au moins un élément e tel que (o == null? E == null: o.equals (e)). |
dix | Object get(int index) Renvoie l'élément à la position spécifiée dans cette liste. Lève une exception IndexOutOfBoundsException si l'index spécifié est hors plage (index <0 || index> = size ()). |
11 | Object getFirst() Renvoie le premier élément de cette liste. Lève NoSuchElementException si cette liste est vide. |
12 | Object getLast() Renvoie le dernier élément de cette liste. Lève NoSuchElementException si cette liste est vide. |
13 | int indexOf(Object o) Renvoie l'index dans cette liste de la première occurrence de l'élément spécifié, ou -1 si la liste ne contient pas cet élément. |
14 | int lastIndexOf(Object o) Renvoie l'index dans cette liste de la dernière occurrence de l'élément spécifié, ou -1 si la liste ne contient pas cet élément. |
15 | ListIterator listIterator(int index) Renvoie un itérateur de liste des éléments de cette liste (dans l'ordre approprié), en commençant à la position spécifiée dans la liste. Lève une exception IndexOutOfBoundsException si l'index spécifié est hors plage (index <0 || index> = size ()). |
16 | Object remove(int index) Supprime l'élément à la position spécifiée dans cette liste. Lève NoSuchElementException si cette liste est vide. |
17 | boolean remove(Object o) Supprime la première occurrence de l'élément spécifié dans cette liste. Lève NoSuchElementException si cette liste est vide. Lève une exception IndexOutOfBoundsException si l'index spécifié est hors plage (index <0 || index> = size ()). |
18 | Object removeFirst() Supprime et renvoie le premier élément de cette liste. Lève NoSuchElementException si cette liste est vide. |
19 | Object removeLast() Supprime et renvoie le dernier élément de cette liste. Lève NoSuchElementException si cette liste est vide. |
20 | Object set(int index, Object element) Remplace l'élément à la position spécifiée dans cette liste par l'élément spécifié. Lève une exception IndexOutOfBoundsException si l'index spécifié est hors plage (index <0 || index> = size ()). |
21 | int size() Renvoie le nombre d'éléments de cette liste. |
22 | Object[] toArray() Renvoie un tableau contenant tous les éléments de cette liste dans le bon ordre. Lève NullPointerException si le tableau spécifié est nul. |
23 | Object[] toArray(Object[] a) Renvoie un tableau contenant tous les éléments de cette liste dans le bon ordre; le type d'exécution du tableau retourné est celui du tableau spécifié. |
Exemple
Le programme suivant illustre plusieurs des méthodes prises en charge par 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);
}
}
Cela produira le résultat suivant -
Production
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]