logo

Java LinkedList-klasse

Java LinkedList-klassehiërarchie

De Java LinkedList-klasse gebruikt een dubbel gekoppelde lijst om de elementen op te slaan. Het biedt een gegevensstructuur met gekoppelde lijsten. Het erft de klasse AbstractList en implementeert List- en Deque-interfaces.

De belangrijke punten over Java LinkedList zijn:

  • De Java LinkedList-klasse kan dubbele elementen bevatten.
  • De Java LinkedList-klasse handhaaft de invoegvolgorde.
  • De Java LinkedList-klasse is niet gesynchroniseerd.
  • In de Java LinkedList-klasse is de manipulatie snel omdat er geen verschuiving hoeft plaats te vinden.
  • De Java LinkedList-klasse kan worden gebruikt als lijst, stapel of wachtrij.

Hiërarchie van de LinkedList-klasse

Zoals weergegeven in het bovenstaande diagram, breidt de Java LinkedList-klasse de AbstractSequentialList-klasse uit en implementeert List- en Deque-interfaces.

volgorde op willekeurige sql

Dubbel gekoppelde lijst

In het geval van een dubbel gekoppelde lijst kunnen we aan beide kanten elementen toevoegen of verwijderen.

java LinkedList-klasse met behulp van een dubbel gekoppelde lijst

LinkedList-klassedeclaratie

Laten we de declaratie voor de klasse java.util.LinkedList bekijken.

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

Constructeurs van Java LinkedList

Constructeur Beschrijving
GelinkteLijst() Het wordt gebruikt om een ​​lege lijst samen te stellen.
LinkedList(Verzameling c) Het wordt gebruikt om een ​​lijst samen te stellen die de elementen van de opgegeven verzameling bevat, in de volgorde waarin ze worden geretourneerd door de iterator van de verzameling.

Methoden van Java LinkedList

Methode Beschrijving
Booleaanse optelling(E e) Het wordt gebruikt om het opgegeven element aan het einde van een lijst toe te voegen.
void add(int index, E-element) Het wordt gebruikt om het opgegeven element op de opgegeven positie-index in een lijst in te voegen.
boolean addAll(Verzameling c) Het wordt gebruikt om alle elementen in de opgegeven verzameling aan het einde van deze lijst toe te voegen, in de volgorde waarin ze worden geretourneerd door de iterator van de opgegeven verzameling.
boolean addAll(Verzameling c) Het wordt gebruikt om alle elementen in de opgegeven verzameling aan het einde van deze lijst toe te voegen, in de volgorde waarin ze worden geretourneerd door de iterator van de opgegeven verzameling.
boolean addAll(int index, verzameling c) Het wordt gebruikt om alle elementen in de opgegeven verzameling toe te voegen, beginnend bij de opgegeven positie in de lijst.
ongeldig toevoegenEerste(E e) Het wordt gebruikt om het gegeven element aan het begin van een lijst in te voegen.
void addLast(E e) Het wordt gebruikt om het gegeven element aan het einde van een lijst toe te voegen.
leegte helder() Het wordt gebruikt om alle elementen uit een lijst te verwijderen.
Objectkloon() Het wordt gebruikt om een ​​ondiepe kopie van een ArrayList terug te geven.
booleaanse waarde bevat(Object o) Het wordt gebruikt om waar te retourneren als een lijst een opgegeven element bevat.
Iterator aflopendIterator() Het wordt gebruikt om een ​​iterator over de elementen in een deque terug te geven in omgekeerde volgorde.
E-element() Het wordt gebruikt om het eerste element van een lijst op te halen.
E get(int-index) Het wordt gebruikt om het element op de opgegeven positie in een lijst te retourneren.
E getFirst() Het wordt gebruikt om het eerste element in een lijst terug te geven.
E getLaatste() Het wordt gebruikt om het laatste element in een lijst terug te geven.
int indexOf(Object o) Het wordt gebruikt om de index in een lijst terug te geven van de eerste keer dat het opgegeven element voorkomt, of -1 als de lijst geen enkel element bevat.
int laatsteIndexOf(Object o) Het wordt gebruikt om de index in een lijst terug te geven van de laatste keer dat het opgegeven element voorkomt, of -1 als de lijst geen enkel element bevat.
ListIterator listIterator(int-index) Het wordt gebruikt om een ​​lijst-iterator van de elementen in de juiste volgorde terug te geven, beginnend op de opgegeven positie in de lijst.
Booleaanse aanbieding(E e) Het voegt het opgegeven element toe als het laatste element van een lijst.
Booleaanse aanbiedingEerste(E e) Het voegt het opgegeven element vooraan in een lijst in.
Booleaanse aanbiedingLaatste(E e) Het voegt het opgegeven element in aan het einde van een lijst.
E kijkje() Het haalt het eerste element van een lijst op
E peekFirst() Het haalt het eerste element van een lijst op of retourneert null als een lijst leeg is.
E peekLaatste() Het haalt het laatste element van een lijst op of retourneert null als een lijst leeg is.
E-peiling() Het haalt het eerste element van een lijst op en verwijdert het.
E pollEerste() Het haalt het eerste element van een lijst op en verwijdert het, of retourneert null als een lijst leeg is.
E-peilingLaatste() Het haalt het laatste element van een lijst op en verwijdert het, of retourneert null als een lijst leeg is.
En pop() Er wordt een element uit de stapel gehaald, weergegeven door een lijst.
ongeldige druk(E e) Het duwt een element op de stapel die wordt weergegeven door een lijst.
E verwijderen() Het wordt gebruikt om het eerste element van een lijst op te halen en te verwijderen.
E verwijder(int index) Het wordt gebruikt om het element op de opgegeven positie in een lijst te verwijderen.
booleaanse verwijder(Object o) Het wordt gebruikt om de eerste keer dat het opgegeven element in een lijst voorkomt, te verwijderen.
E verwijderEerste() Het verwijdert het eerste element uit een lijst en retourneert het.
boolean removeFirstOccurrence(Object o) Het wordt gebruikt om de eerste keer dat het opgegeven element in een lijst voorkomt te verwijderen (bij het doorlopen van de lijst van kop tot staart).
E verwijderLaatste() Het verwijdert het laatste element uit een lijst en retourneert het.
boolean removeLastOccurrence(Object o) Het verwijdert de laatste keer dat het opgegeven element in een lijst voorkomt (bij het doorlopen van de lijst van kop tot staart).
E set(int index, E-element) Het vervangt het element op de opgegeven positie in een lijst door het opgegeven element.
Object[] naarArray() Het wordt gebruikt om een ​​array terug te geven die alle elementen in een lijst in de juiste volgorde bevat (van het eerste tot het laatste element).
T[] naarArray(T[] a) Het retourneert een array met alle elementen in de juiste volgorde (van het eerste tot het laatste element); het runtimetype van de geretourneerde array is dat van de opgegeven array.
int-grootte() Het wordt gebruikt om het aantal elementen in een lijst te retourneren.

Java LinkedList-voorbeeld

 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-voorbeeld om elementen toe te voegen

Hier zien we verschillende manieren om elementen toe te voegen.

 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-voorbeeld om elementen te verwijderen

Hier zien we verschillende manieren om een ​​element te verwijderen.

 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 Voorbeeld om een ​​lijst met elementen om te keren

 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 Voorbeeld: Boek

 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); } } } 

Uitgang:

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