logo

Java LinkedList -luokka

Java LinkedList -luokkahierarkia

Java LinkedList -luokka käyttää kaksoislinkitettyä listaa elementtien tallentamiseen. Se tarjoaa linkitetyn luettelon tietorakenteen. Se perii AbstractList-luokan ja toteuttaa List- ja Deque-liitännät.

Java LinkedListin tärkeimmät kohdat ovat:

  • Java LinkedList -luokka voi sisältää päällekkäisiä elementtejä.
  • Java LinkedList -luokka ylläpitää lisäysjärjestystä.
  • Java LinkedList -luokkaa ei ole synkronoitu.
  • Java LinkedList -luokassa manipulointi on nopeaa, koska siirtoa ei tarvitse tapahtua.
  • Java LinkedList -luokkaa voidaan käyttää listana, pinona tai jonona.

LinkedList-luokan hierarkia

Kuten yllä olevasta kaaviosta näkyy, Java LinkedList -luokka laajentaa AbstractSequentialList-luokkaa ja toteuttaa List- ja Deque-liitännät.

arp-a-komento

Kaksoislinkitetty lista

Kun kyseessä on kaksoislinkitetty luettelo, voimme lisätä tai poistaa elementtejä molemmilta puolilta.

java LinkedList -luokka käyttäen kaksoislinkitettyä listaa

LinkedList-luokkailmoitus

Katsotaanpa java.util.LinkedList-luokan ilmoitus.

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

Java LinkedListin rakentajat

Rakentaja Kuvaus
LinkedList() Sitä käytetään tyhjän listan muodostamiseen.
Linkitetty luettelo (kokoelma c) Sitä käytetään luomaan luettelo, joka sisältää määritetyn kokoelman elementit järjestyksessä, jossa kokoelman iteraattori palauttaa ne.

Java LinkedListin menetelmät

Menetelmä Kuvaus
boolen lisäys(E e) Sitä käytetään liittämään määritetty elementti luettelon loppuun.
void add(int-indeksi, E-elementti) Sitä käytetään määritetyn elementin lisäämiseen luettelon määritettyyn paikkaindeksiin.
boolean addAll(kokoelma c) Sitä käytetään liittämään kaikki määritetyn kokoelman elementit tämän luettelon loppuun siinä järjestyksessä, jossa määritetyn kokoelman iteraattori palauttaa ne.
boolean addAll(kokoelma c) Sitä käytetään liittämään kaikki määritetyn kokoelman elementit tämän luettelon loppuun siinä järjestyksessä, jossa määritetyn kokoelman iteraattori palauttaa ne.
boolean addAll(int-indeksi, kokoelma c) Sitä käytetään liittämään kaikki määritetyn kokoelman elementit luettelon määritetystä kohdasta alkaen.
void addFirst(E e) Sitä käytetään lisäämään annettu elementti luettelon alkuun.
void addLast(E e) Sitä käytetään liittämään annettu elementti luettelon loppuun.
void clear () Sitä käytetään poistamaan kaikki elementit luettelosta.
Objektin klooni() Sitä käytetään palauttamaan matala kopio ArrayLististä.
boolean sisältää (Objekti o) Sitä käytetään palauttamaan tosi, jos luettelo sisältää tietyn elementin.
Iterator descendingIterator() Sitä käytetään palauttamaan iteraattori elementtien päälle deque-järjestyksessä käänteisessä järjestyksessä.
E elementti() Sitä käytetään luettelon ensimmäisen elementin hakemiseen.
E get(int index) Sitä käytetään palauttamaan elementti määritettyyn kohtaan luettelossa.
E getFirst() Sitä käytetään palauttamaan luettelon ensimmäinen elementti.
E getLast() Sitä käytetään palauttamaan luettelon viimeinen elementti.
int indexOf(objekti o) Sitä käytetään palauttamaan indeksi määritetyn elementin ensimmäisen esiintymisen luettelossa tai -1, jos luettelo ei sisällä mitään elementtiä.
int lastIndexOf(Object o) Sitä käytetään palauttamaan indeksi määritetyn elementin viimeisimmän esiintymisen luettelossa tai -1, jos luettelo ei sisällä yhtään elementtiä.
ListIterator listIterator(int index) Sitä käytetään palauttamaan elementtien lista-iteraattori oikeassa järjestyksessä, alkaen määritetystä kohdasta luettelossa.
Boolen tarjous (E e) Se lisää määritetyn elementin luettelon viimeiseksi elementiksi.
Boolen tarjous ensin(E e) Se lisää määritetyn elementin luettelon alkuun.
boolen tarjousViimeinen(E e) Se lisää määritetyn elementin luettelon loppuun.
E kurkista() Se hakee luettelon ensimmäisen elementin
E peekFirst() Se hakee luettelon ensimmäisen elementin tai palauttaa nollan, jos luettelo on tyhjä.
E peekLast() Se hakee luettelon viimeisen elementin tai palauttaa nollan, jos luettelo on tyhjä.
E kysely () Se hakee ja poistaa luettelon ensimmäisen elementin.
E kysely Ensimmäinen() Se hakee ja poistaa luettelon ensimmäisen elementin tai palauttaa nollan, jos luettelo on tyhjä.
E kysely Viimeinen() Se hakee ja poistaa luettelon viimeisen elementin tai palauttaa nollan, jos luettelo on tyhjä.
Ja pop() Se ponnahtaa listan edustamasta pinosta elementin.
tyhjä työntö (E e) Se työntää elementin listan edustamaan pinoon.
E poista () Sitä käytetään luettelon ensimmäisen elementin hakemiseen ja poistamiseen.
E poista (int index) Sitä käytetään elementin poistamiseen luettelon määritetystä kohdasta.
boolen poisto (objekti o) Sitä käytetään määritetyn elementin ensimmäisen esiintymisen poistamiseen luettelosta.
E poistaFirst() Se poistaa ja palauttaa luettelon ensimmäisen elementin.
boolean removeFirstCurrence(Object o) Sitä käytetään poistamaan määritetyn elementin ensimmäinen esiintyminen luettelosta (kun kuljetaan luetteloa päästä häntään).
E poistaViimeinen() Se poistaa ja palauttaa luettelon viimeisen elementin.
boolean removeLastOccurrence(Object o) Se poistaa määritetyn elementin viimeisimmän esiintymän luettelosta (kun kuljetaan luetteloa päästä häntään).
E-joukko(int-indeksi, E-elementti) Se korvaa luettelossa määritetyn kohdan elementin määritetyllä elementillä.
Object[] toArray() Sitä käytetään palauttamaan taulukko, joka sisältää kaikki luettelon elementit oikeassa järjestyksessä (ensimmäisestä viimeiseen elementtiin).
T[] toArray(T[] a) Se palauttaa taulukon, joka sisältää kaikki elementit oikeassa järjestyksessä (ensimmäisestä viimeiseen elementtiin); palautetun taulukon ajonaikainen tyyppi on määritetyn taulukon tyyppi.
int size () Sitä käytetään palauttamaan luettelon elementtien lukumäärä.

Java LinkedList -esimerkki

 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 -esimerkki elementtien lisäämiseksi

Tässä näemme erilaisia ​​tapoja lisätä elementtejä.

 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 -esimerkki elementtien poistamiseksi

Tässä näemme erilaisia ​​tapoja poistaa elementti.

binääripuu inorder traversal
 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 Esimerkki elementtiluettelon kääntämisestä

 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 Esimerkki: Kirja

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

Lähtö:

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