logo

Clasa Java LinkedList

Ierarhia claselor Java LinkedList

Clasa Java LinkedList folosește o listă dublu legată pentru a stoca elementele. Oferă o structură de date cu listă conexă. Moștenește clasa AbstractList și implementează interfețele List și Deque.

Punctele importante despre Java LinkedList sunt:

  • Clasa Java LinkedList poate conține elemente duplicat.
  • Clasa Java LinkedList menține ordinea de inserare.
  • Clasa Java LinkedList nu este sincronizată.
  • În clasa Java LinkedList, manipularea este rapidă, deoarece nu trebuie să apară o schimbare.
  • Clasa Java LinkedList poate fi folosită ca listă, stivă sau coadă.

Ierarhia clasei LinkedList

După cum se arată în diagrama de mai sus, clasa Java LinkedList extinde clasa AbstractSequentialList și implementează interfețele List și Deque.

încercați catch block în java

Listă dublu legată

În cazul unei liste dublu legate, putem adăuga sau elimina elemente din ambele părți.

Clasa java LinkedList folosind o listă dublu legată

Declarație de clasă LinkedList

Să vedem declarația pentru clasa java.util.LinkedList.

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

Constructorii Java LinkedList

Constructor Descriere
LinkedList() Este folosit pentru a construi o listă goală.
LinkedList(Colecția c) Este folosit pentru a construi o listă care conține elementele colecției specificate, în ordinea în care acestea sunt returnate de iteratorul colecției.

Metode de Java LinkedList

Metodă Descriere
adăugare booleană (E e) Este folosit pentru a adăuga elementul specificat la sfârșitul unei liste.
void add (index int, element E) Este folosit pentru a insera elementul specificat la indexul de poziție specificat într-o listă.
boolean addAll(Colecția c) Este folosit pentru a adăuga toate elementele din colecția specificată la sfârșitul acestei liste, în ordinea în care sunt returnate de iteratorul colecției specificate.
boolean addAll(Colecția c) Este folosit pentru a adăuga toate elementele din colecția specificată la sfârșitul acestei liste, în ordinea în care sunt returnate de iteratorul colecției specificate.
boolean addAll(index int, Colecția c) Este folosit pentru a adăuga toate elementele din colecția specificată, începând de la poziția specificată a listei.
void addFirst(E e) Este folosit pentru a insera elementul dat la începutul unei liste.
void addLast(E e) Este folosit pentru a adăuga elementul dat la sfârșitul unei liste.
void clear() Este folosit pentru a elimina toate elementele dintr-o listă.
Clona obiect() Este folosit pentru a returna o copie superficială a unui ArrayList.
boolean conține (Obiect o) Este folosit pentru a returna true dacă o listă conține un element specificat.
Iterator descendentIterator() Este folosit pentru a returna un iterator peste elementele dintr-o deque în ordine secvențială inversă.
E element() Este folosit pentru a prelua primul element al unei liste.
E get(index int) Este folosit pentru a returna elementul la poziția specificată într-o listă.
E getFirst() Este folosit pentru a returna primul element dintr-o listă.
E getLast() Este folosit pentru a returna ultimul element dintr-o listă.
int indexOf(Obiect o) Este folosit pentru a returna indexul într-o listă a primei apariții a elementului specificat sau -1 dacă lista nu conține niciun element.
int lastIndexOf(Obiect o) Este folosit pentru a returna indexul într-o listă cu ultima apariție a elementului specificat sau -1 dacă lista nu conține niciun element.
ListIterator listIterator(index int) Este folosit pentru a returna un iterator de listă al elementelor în ordinea corespunzătoare, începând de la poziția specificată în listă.
oferta booleană (E e) Adaugă elementul specificat ca ultimul element al unei liste.
oferta booleană Prima (E e) Inserează elementul specificat în partea din față a unei liste.
oferta booleanUltima(E e) Inserează elementul specificat la sfârșitul unei liste.
E peek() Acesta preia primul element al unei liste
E peekFirst() Preia primul element al unei liste sau returnează null dacă o listă este goală.
E peekLast() Preia ultimul element al unei liste sau returnează null dacă o listă este goală.
E sondaj() Preia și elimină primul element al unei liste.
E pollFirst() Preia și elimină primul element al unei liste sau returnează null dacă o listă este goală.
E sondajLast() Preia și elimină ultimul element al unei liste sau returnează null dacă o listă este goală.
Și pop() Afișează un element din stiva reprezentată de o listă.
împingere gol (E e) Împinge un element pe stiva reprezentată de o listă.
E eliminați() Este folosit pentru a prelua și elimina primul element al unei liste.
E elimina (index int) Este folosit pentru a elimina elementul din poziția specificată într-o listă.
eliminare boolean (obiect o) Este folosit pentru a elimina prima apariție a elementului specificat dintr-o listă.
E removeFirst() Îndepărtează și returnează primul element dintr-o listă.
boolean removeFirstOccurrence(Obiect o) Este folosit pentru a elimina prima apariție a elementului specificat dintr-o listă (când parcurgeți lista de la cap la coadă).
E removeLast() Îndepărtează și returnează ultimul element dintr-o listă.
boolean removeLastOccurrence(Obiect o) Îndepărtează ultima apariție a elementului specificat dintr-o listă (când parcurgeți lista de la cap la coadă).
E set (index int, element E) Acesta înlocuiește elementul din poziția specificată într-o listă cu elementul specificat.
Object[] toArray() Este folosit pentru a returna o matrice care contine toate elementele dintr-o lista in ordinea corespunzatoare (de la primul la ultimul element).
T[] toArray(T[] a) Returnează un tablou care conține toate elementele din secvența potrivită (de la primul până la ultimul element); tipul de rulare al matricei returnate este cel al matricei specificate.
dimensiune int() Este folosit pentru a returna numărul de elemente dintr-o listă.

Exemplu 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 

Exemplu Java LinkedList pentru a adăuga elemente

Aici, vedem diferite moduri de a adăuga elemente.

 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] 

Exemplu Java LinkedList pentru a elimina elemente

Aici, vedem diferite moduri de a elimina un element.

 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 Exemplu pentru a inversa o listă de elemente

 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 

Exemplu Java LinkedList: carte

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

Ieșire:

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