logo

Java LinkedList klasse

Java LinkedList klassehierarki

Java LinkedList-klassen bruger en dobbelt linket liste til at gemme elementerne. Det giver en linked-liste datastruktur. Det arver AbstractList-klassen og implementerer List og Deque-grænseflader.

De vigtige punkter om Java LinkedList er:

  • Java LinkedList-klassen kan indeholde duplikerede elementer.
  • Java LinkedList-klassen opretholder indsættelsesrækkefølgen.
  • Java LinkedList-klassen er ikke-synkroniseret.
  • I Java LinkedList-klassen er manipulation hurtig, fordi der ikke skal ske skift.
  • Java LinkedList-klassen kan bruges som en liste, stak eller kø.

Hierarki af LinkedList-klassen

Som vist i diagrammet ovenfor, udvider Java LinkedList-klassen AbstractSequentialList-klassen og implementerer List og Deque-grænseflader.

java webtjenester

Dobbeltforbundet liste

I tilfælde af en dobbelt linket liste kan vi tilføje eller fjerne elementer fra begge sider.

java LinkedList klasse ved hjælp af dobbelt linket liste

LinkedList klasseerklæring

Lad os se erklæringen for klassen java.util.LinkedList.

globale variable js
 public class LinkedList extends AbstractSequentialList implements List, Deque, Cloneable, Serializable 

Konstruktører af Java LinkedList

Konstruktør Beskrivelse
LinkedList() Det bruges til at konstruere en tom liste.
LinkedList (Samling c) Det bruges til at konstruere en liste, der indeholder elementerne i den angivne samling, i den rækkefølge, de returneres af samlingens iterator.

Metoder til Java LinkedList

Metode Beskrivelse
boolesk add(E e) Det bruges til at tilføje det angivne element til slutningen af ​​en liste.
void add(int index, E element) Det bruges til at indsætte det angivne element ved det angivne positionsindeks i en liste.
boolean addAll(Samling c) Det bruges til at tilføje alle elementerne i den angivne samling til slutningen af ​​denne liste, i den rækkefølge, som de returneres af den angivne samlings iterator.
boolean addAll(Samling c) Det bruges til at tilføje alle elementerne i den angivne samling til slutningen af ​​denne liste, i den rækkefølge, som de returneres af den angivne samlings iterator.
boolean addAll(int index, Collection c) Den bruges til at tilføje alle elementer i den angivne samling, startende ved den angivne position på listen.
void addFirst(E e) Det bruges til at indsætte det givne element i begyndelsen af ​​en liste.
void addLast(E e) Det bruges til at tilføje det givne element til slutningen af ​​en liste.
void clear() Det bruges til at fjerne alle elementer fra en liste.
Objekt klon() Det bruges til at returnere en overfladisk kopi af en ArrayList.
boolesk indeholder(Objekt o) Det bruges til at returnere sand, hvis en liste indeholder et specificeret element.
Iterator descendingIterator() Det bruges til at returnere en iterator over elementerne i en deque i omvendt sekventiel rækkefølge.
E element() Det bruges til at hente det første element i en liste.
E get(int indeks) Det bruges til at returnere elementet på den angivne position i en liste.
E getFirst() Det bruges til at returnere det første element i en liste.
E getLast() Det bruges til at returnere det sidste element i en liste.
int indexOf(Objekt o) Det bruges til at returnere indekset i en liste over den første forekomst af det angivne element, eller -1, hvis listen ikke indeholder noget element.
int lastIndexOf(Objekt o) Det bruges til at returnere indekset i en liste over den sidste forekomst af det angivne element, eller -1, hvis listen ikke indeholder noget element.
ListIterator listIterator(int index) Det bruges til at returnere en liste-iterator af elementerne i korrekt rækkefølge, startende ved den specificerede position på listen.
boolesk tilbud(E e) Den tilføjer det angivne element som det sidste element på en liste.
boolesk tilbud First(E e) Den indsætter det angivne element foran på en liste.
boolsk tilbud Sidste(E e) Den indsætter det angivne element i slutningen af ​​en liste.
E kig() Den henter det første element i en liste
E peekFirst() Den henter det første element i en liste eller returnerer null, hvis en liste er tom.
E peekLast() Den henter det sidste element i en liste eller returnerer null, hvis en liste er tom.
E afstemning() Den henter og fjerner det første element i en liste.
E pollFirst() Den henter og fjerner det første element i en liste, eller returnerer null, hvis en liste er tom.
E pollLast() Den henter og fjerner det sidste element i en liste, eller returnerer null, hvis en liste er tom.
Og pop() Det popper et element op fra stakken repræsenteret af en liste.
void push(E e) Det skubber et element ind på stakken repræsenteret af en liste.
E fjern() Det bruges til at hente og fjerne det første element i en liste.
E remove(int index) Det bruges til at fjerne elementet på den angivne position i en liste.
boolesk fjern(Objekt o) Det bruges til at fjerne den første forekomst af det angivne element i en liste.
E removeFirst() Det fjerner og returnerer det første element fra en liste.
boolesk fjernFirstOccurrence(Objekt o) Det bruges til at fjerne den første forekomst af det angivne element i en liste (når du krydser listen fra hoved til hale).
E removeLast() Det fjerner og returnerer det sidste element fra en liste.
boolesk fjern Sidste Forekomst(Objekt o) Det fjerner den sidste forekomst af det angivne element i en liste (når du krydser listen fra hoved til hale).
E sæt(int indeks, E element) Det erstatter elementet på den angivne position i en liste med det angivne element.
Objekt[] tilArray() Det bruges til at returnere et array, der indeholder alle elementerne i en liste i korrekt rækkefølge (fra første til sidste element).
T[] tilArray(T[] a) Det returnerer et array, der indeholder alle elementerne i den rigtige rækkefølge (fra første til sidste element); runtime-typen for den returnerede matrix er den for den angivne matrix.
int størrelse() Det bruges til at returnere antallet af elementer i en liste.

Eksempel på Java LinkedList

 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 eksempel for at tilføje elementer

Her ser vi forskellige måder at tilføje elementer på.

 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 eksempel for at fjerne elementer

Her ser vi forskellige måder at fjerne et element på.

 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 Eksempel for at vende en liste over elementer

 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 Eksempel: Bog

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

Produktion:

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