logo

Java LinkedList-Klasse

Java LinkedList-Klassenhierarchie

Die Java-Klasse LinkedList verwendet eine doppelt verknüpfte Liste zum Speichern der Elemente. Es stellt eine Datenstruktur mit verknüpften Listen bereit. Es erbt die AbstractList-Klasse und implementiert List- und Deque-Schnittstellen.

Die wichtigen Punkte zu Java LinkedList sind:

  • Die Java LinkedList-Klasse kann doppelte Elemente enthalten.
  • Die Java LinkedList-Klasse behält die Einfügereihenfolge bei.
  • Die Java LinkedList-Klasse ist nicht synchronisiert.
  • In der Java-Klasse LinkedList erfolgt die Bearbeitung schnell, da keine Verschiebung erfolgen muss.
  • Die Java LinkedList-Klasse kann als Liste, Stapel oder Warteschlange verwendet werden.

Hierarchie der LinkedList-Klasse

Wie im obigen Diagramm gezeigt, erweitert die Java-Klasse LinkedList die Klasse AbstractSequentialList und implementiert List- und Deque-Schnittstellen.

Java-String formatieren

Doppelt verknüpfte Liste

Im Falle einer doppelt verknüpften Liste können wir Elemente auf beiden Seiten hinzufügen oder entfernen.

Java LinkedList-Klasse mit doppelt verknüpfter Liste

Deklaration der LinkedList-Klasse

Sehen wir uns die Deklaration für die Klasse java.util.LinkedList an.

 public class LinkedList extends AbstractSequentialList implements List, Deque, Cloneable, Serializable 

Konstruktoren von Java LinkedList

Konstrukteur Beschreibung
LinkedList() Es wird verwendet, um eine leere Liste zu erstellen.
LinkedList(Sammlung c) Es wird verwendet, um eine Liste zu erstellen, die die Elemente der angegebenen Sammlung in der Reihenfolge enthält, in der sie vom Iterator der Sammlung zurückgegeben werden.

Methoden von Java LinkedList

Methode Beschreibung
boolescher Wert add(E e) Es wird verwendet, um das angegebene Element an das Ende einer Liste anzuhängen.
void add(int index, E element) Es wird verwendet, um das angegebene Element am angegebenen Positionsindex in eine Liste einzufügen.
boolean addAll(Collection c) Es wird verwendet, um alle Elemente in der angegebenen Sammlung an das Ende dieser Liste anzuhängen, und zwar in der Reihenfolge, in der sie vom Iterator der angegebenen Sammlung zurückgegeben werden.
boolean addAll(Collection c) Es wird verwendet, um alle Elemente in der angegebenen Sammlung an das Ende dieser Liste anzuhängen, und zwar in der Reihenfolge, in der sie vom Iterator der angegebenen Sammlung zurückgegeben werden.
boolean addAll(int index, Collection c) Es wird verwendet, um alle Elemente in der angegebenen Sammlung anzuhängen, beginnend an der angegebenen Position der Liste.
void addFirst(E e) Es wird verwendet, um das angegebene Element am Anfang einer Liste einzufügen.
void addLast(E e) Es wird verwendet, um das angegebene Element an das Ende einer Liste anzuhängen.
void klar() Es wird verwendet, um alle Elemente aus einer Liste zu entfernen.
Objektklon() Es wird verwendet, um eine flache Kopie einer ArrayList zurückzugeben.
boolean enthält(Objekt o) Es wird verwendet, um „true“ zurückzugeben, wenn eine Liste ein angegebenes Element enthält.
Iterator absteigenderIterator() Es wird verwendet, um einen Iterator über die Elemente in einer Deque in umgekehrter Reihenfolge zurückzugeben.
E-Element() Es wird verwendet, um das erste Element einer Liste abzurufen.
E get(int index) Es wird verwendet, um das Element an der angegebenen Position in einer Liste zurückzugeben.
E getFirst() Es wird verwendet, um das erste Element in einer Liste zurückzugeben.
E getLast() Es wird verwendet, um das letzte Element in einer Liste zurückzugeben.
int indexOf(Object o) Es wird verwendet, um den Index in einer Liste des ersten Vorkommens des angegebenen Elements zurückzugeben, oder -1, wenn die Liste kein Element enthält.
int lastIndexOf(Object o) Es wird verwendet, um den Index in einer Liste des letzten Vorkommens des angegebenen Elements zurückzugeben, oder -1, wenn die Liste kein Element enthält.
ListIterator listIterator(int index) Es wird verwendet, um einen Listeniterator der Elemente in der richtigen Reihenfolge zurückzugeben, beginnend an der angegebenen Position in der Liste.
boolesches Angebot (E e) Es fügt das angegebene Element als letztes Element einer Liste hinzu.
boolean offerFirst(E e) Es fügt das angegebene Element am Anfang einer Liste ein.
boolean offerLast(E e) Es fügt das angegebene Element am Ende einer Liste ein.
E peek() Es ruft das erste Element einer Liste ab
E peekFirst() Es ruft das erste Element einer Liste ab oder gibt null zurück, wenn eine Liste leer ist.
E peekLast() Es ruft das letzte Element einer Liste ab oder gibt null zurück, wenn eine Liste leer ist.
E-Umfrage() Es ruft das erste Element einer Liste ab und entfernt es.
E pollFirst() Es ruft das erste Element einer Liste ab und entfernt es oder gibt null zurück, wenn eine Liste leer ist.
E pollLast() Es ruft das letzte Element einer Liste ab und entfernt es oder gibt null zurück, wenn eine Liste leer ist.
Und Pop() Es entfernt ein Element aus dem durch eine Liste dargestellten Stapel.
Void Push(E e) Es schiebt ein Element auf den Stapel, der durch eine Liste dargestellt wird.
E entfernen() Es wird zum Abrufen und Entfernen des ersten Elements einer Liste verwendet.
E entfernen(int index) Es wird verwendet, um das Element an der angegebenen Position in einer Liste zu entfernen.
boolescher Wert Remove(Objekt o) Es wird verwendet, um das erste Vorkommen des angegebenen Elements in einer Liste zu entfernen.
E. RemoveFirst() Es entfernt das erste Element aus einer Liste und gibt es zurück.
boolean removeFirstOccurrence(Object o) Es wird verwendet, um das erste Vorkommen des angegebenen Elements in einer Liste zu entfernen (beim Durchlaufen der Liste von Kopf bis Ende).
E RemoveLast() Es entfernt das letzte Element aus einer Liste und gibt es zurück.
boolean removeLastOccurrence(Object o) Es entfernt das letzte Vorkommen des angegebenen Elements in einer Liste (beim Durchlaufen der Liste von Kopf bis Ende).
E set(int index, E element) Es ersetzt das Element an der angegebenen Position in einer Liste durch das angegebene Element.
Object[] toArray() Es wird verwendet, um ein Array zurückzugeben, das alle Elemente in einer Liste in der richtigen Reihenfolge (vom ersten bis zum letzten Element) enthält.
T[] toArray(T[] a) Es wird ein Array zurückgegeben, das alle Elemente in der richtigen Reihenfolge (vom ersten bis zum letzten Element) enthält. Der Laufzeittyp des zurückgegebenen Arrays ist der des angegebenen Arrays.
int size() Es wird verwendet, um die Anzahl der Elemente in einer Liste zurückzugeben.

Java LinkedList-Beispiel

 import java.util.*; public class LinkedList1{ public static void main(String args[]){ LinkedList al=new LinkedList(); al.add('Ravi'); al.add('Vijay'); al.add('Ravi'); al.add('Ajay'); Iterator itr=al.iterator(); while(itr.hasNext()){ System.out.println(itr.next()); } } } 
 Output: Ravi Vijay Ravi Ajay 

Java LinkedList-Beispiel zum Hinzufügen von Elementen

Hier sehen wir verschiedene Möglichkeiten, Elemente hinzuzufügen.

Abfrageselektor
 import java.util.*; public class LinkedList2{ public static void main(String args[]){ LinkedList ll=new LinkedList(); System.out.println('Initial list of elements: '+ll); ll.add('Ravi'); ll.add('Vijay'); ll.add('Ajay'); System.out.println('After invoking add(E e) method: '+ll); //Adding an element at the specific position ll.add(1, 'Gaurav'); System.out.println('After invoking add(int index, E element) method: '+ll); LinkedList ll2=new LinkedList(); ll2.add('Sonoo'); ll2.add('Hanumat'); //Adding second list elements to the first list ll.addAll(ll2); System.out.println('After invoking addAll(Collection c) method: '+ll); LinkedList ll3=new LinkedList(); ll3.add('John'); ll3.add('Rahul'); //Adding second list elements to the first list at specific position ll.addAll(1, ll3); System.out.println('After invoking addAll(int index, Collection c) method: '+ll); //Adding an element at the first position ll.addFirst('Lokesh'); System.out.println('After invoking addFirst(E e) method: '+ll); //Adding an element at the last position ll.addLast('Harsh'); System.out.println('After invoking addLast(E e) method: '+ll); } } 
 Initial list of elements: [] After invoking add(E e) method: [Ravi, Vijay, Ajay] After invoking add(int index, E element) method: [Ravi, Gaurav, Vijay, Ajay] After invoking addAll(Collection c) method: [Ravi, Gaurav, Vijay, Ajay, Sonoo, Hanumat] After invoking addAll(int index, Collection c) method: [Ravi, John, Rahul, Gaurav, Vijay, Ajay, Sonoo, Hanumat] After invoking addFirst(E e) method: [Lokesh, Ravi, John, Rahul, Gaurav, Vijay, Ajay, Sonoo, Hanumat] After invoking addLast(E e) method: [Lokesh, Ravi, John, Rahul, Gaurav, Vijay, Ajay, Sonoo, Hanumat, Harsh] 

Java LinkedList-Beispiel zum Entfernen von Elementen

Hier sehen wir verschiedene Möglichkeiten, ein Element zu entfernen.

 import java.util.*; public class LinkedList3 { public static void main(String [] args) { LinkedList ll=new LinkedList(); ll.add('Ravi'); ll.add('Vijay'); ll.add('Ajay'); ll.add('Anuj'); ll.add('Gaurav'); ll.add('Harsh'); ll.add('Virat'); ll.add('Gaurav'); ll.add('Harsh'); ll.add('Amit'); System.out.println('Initial list of elements: '+ll); //Removing specific element from arraylist ll.remove('Vijay'); System.out.println('After invoking remove(object) method: '+ll); //Removing element on the basis of specific position ll.remove(0); System.out.println('After invoking remove(index) method: '+ll); LinkedList ll2=new LinkedList(); ll2.add('Ravi'); ll2.add('Hanumat'); // Adding new elements to arraylist ll.addAll(ll2); System.out.println('Updated list : '+ll); //Removing all the new elements from arraylist ll.removeAll(ll2); System.out.println('After invoking removeAll() method: '+ll); //Removing first element from the list ll.removeFirst(); System.out.println('After invoking removeFirst() method: '+ll); //Removing first element from the list ll.removeLast(); System.out.println('After invoking removeLast() method: '+ll); //Removing first occurrence of element from the list ll.removeFirstOccurrence('Gaurav'); System.out.println('After invoking removeFirstOccurrence() method: '+ll); //Removing last occurrence of element from the list ll.removeLastOccurrence('Harsh'); System.out.println('After invoking removeLastOccurrence() method: '+ll); //Removing all the elements available in the list ll.clear(); System.out.println('After invoking clear() method: '+ll); } } 
 Initial list of elements: [Ravi, Vijay, Ajay, Anuj, Gaurav, Harsh, Virat, Gaurav, Harsh, Amit] After invoking remove(object) method: [Ravi, Ajay, Anuj, Gaurav, Harsh, Virat, Gaurav, Harsh, Amit] After invoking remove(index) method: [Ajay, Anuj, Gaurav, Harsh, Virat, Gaurav, Harsh, Amit] Updated list : [Ajay, Anuj, Gaurav, Harsh, Virat, Gaurav, Harsh, Amit, Ravi, Hanumat] After invoking removeAll() method: [Ajay, Anuj, Gaurav, Harsh, Virat, Gaurav, Harsh, Amit] After invoking removeFirst() method: [Gaurav, Harsh, Virat, Gaurav, Harsh, Amit] After invoking removeLast() method: [Gaurav, Harsh, Virat, Gaurav, Harsh] After invoking removeFirstOccurrence() method: [Harsh, Virat, Gaurav, Harsh] After invoking removeLastOccurrence() method: [Harsh, Virat, Gaurav] After invoking clear() method: [] 

Java LinkedList-Beispiel zum Umkehren einer Liste von Elementen

 import java.util.*; public class LinkedList4{ public static void main(String args[]){ LinkedList ll=new LinkedList(); ll.add('Ravi'); ll.add('Vijay'); ll.add('Ajay'); //Traversing the list of elements in reverse order Iterator i=ll.descendingIterator(); while(i.hasNext()) { System.out.println(i.next()); } } } 
 Output: Ajay Vijay Ravi 

Java LinkedList-Beispiel: Buch

 import java.util.*; class Book { int id; String name,author,publisher; int quantity; public Book(int id, String name, String author, String publisher, int quantity) { this.id = id; this.name = name; this.author = author; this.publisher = publisher; this.quantity = quantity; } } public class LinkedListExample { public static void main(String[] args) { //Creating list of Books List list=new LinkedList(); //Creating Books Book b1=new Book(101,'Let us C','Yashwant Kanetkar','BPB',8); Book b2=new Book(102,'Data Communications & Networking','Forouzan','Mc Graw Hill',4); Book b3=new Book(103,'Operating System','Galvin','Wiley',6); //Adding Books to list list.add(b1); list.add(b2); list.add(b3); //Traversing list for(Book b:list){ System.out.println(b.id+' '+b.name+' '+b.author+' '+b.publisher+' '+b.quantity); } } } 

Ausgabe:

 101 Let us C Yashwant Kanetkar BPB 8 102 Data Communications & Networking Forouzan Mc Graw Hill 4 103 Operating System Galvin Wiley 6