Java-kø: Alt hvad du behøver at vide om kø i Java



I denne artikel tager vi en populær Java-datastruktur kendt som Java-kø. Vi bruger også egnede programmatiske eksempler for bedre forståelse.

er et stærkt programmeringssprog, og det understøtter forskellige datastrukturer for at gøre programmørernes liv let. I denne artikel vil vi se på en sådan datastruktur, der er Java-kø. Dette er pointerne, som denne artikel fokuserer på,

Lad os komme i gang dengang,





Kø i Java

En kø er en datastruktur, der følger princippet om FIFO (First-In-First-Out), dvs. elementerne indsættes i slutningen af ​​listen og slettes fra begyndelsen af ​​listen. Denne grænseflade er tilgængelig i java.util.package og udvider Collection Interface.

Kø understøtter flere metoder, herunder indsættelse og sletning. Køerne i java.util.package er kendt som Ubegrænsede køer , mens køerne til stede i pakken java.util.concurrent er kendte er Afgrænsede køer.



Alle køer undtagen Deques understøtter indsættelse i slutningen og sletning forfra. Deques understøtter indsættelse og sletning af elementer i begge ender.

Lad os gå til det næste emne i denne artikel om Java-kø,

Implementering af Java-kø

For at kunne bruge køgrænsefladen er vi nødt til at starte en konkret klasse. Følgende er de få implementeringer, der kan bruges:



  • util.LinkedList
  • util.PriorityQueue

Da disse implementeringer ikke er trådsikre, fungerer PriorityBlockingQueue som et alternativ til trådsikker implementering.

Eksempel:

Kø q1 = ny LinkedList ()
Kø q2 = ny PriorityQue ()

Lad os tage et lok på nogle vigtige Java-kømetoder,

Metoder i Java-kø

  • tilføje(): Metoden add () bruges til at indsætte elementer i slutningen eller i køens hale. Metoden nedarves fra samlingsgrænsefladen.
  • tilbud(): Metoden offer () foretrækkes frem for metoden add (), da den indsætter det angivne element i køen uden at krænke kapacitetsbegrænsninger.
  • kig (): Peek () -metoden bruges til at se forrest i køen uden at fjerne den. Hvis køen er tom, returnerer den en nulværdi.
  • element(): Hvis køen er tom, kaster metoden NoSuchElementException.
  • fjerne(): Metoden remove () fjerner fronten af ​​køen og returnerer den. Kaster NoSuchElementException, hvis køen er tom.
  • afstemning(): Poll () -metoden fjerner begyndelsen af ​​køen og returnerer den. Hvis køen er tom, returnerer den en nulværdi.

En oversigt over følgende metoder gives som følger:

Operation

Kaster undtagelse

Returnerer værdi

Indsæt

sortering af et array c ++

tilføj (element)

tilbud (element)

Fjerne

fjerne()

afstemning()

Undersøge

element()

kigge ()

Lad os se demonstrationen nu,

Program til at demonstrere kømetoder

import java.util. * public class Main {public static void main (String [] args) {// Vi kan ikke oprette forekomst af en kø, da det er en grænseflade, og derfor køer vi q1 = ny LinkedList () // Tilføjelse af elementer til køen q1.add ('I') q1.add ('Love') q1.add ('Rock') q1.add ('And') q1.add ('Roll') System.out.println ('Elements i kø: '+ q1) / * * Vi kan fjerne et element fra kø ved hjælp af remove () -metoden, * dette fjerner det første element fra køen * / System.out.println (' Fjernet element: '+ q1.remove ( )) / * * element () metode - dette returnerer hovedet på * køen. * / System.out.println ('Head:' + q1.element ()) / * * poll () metode - dette fjerner og returnerer * hovedet til køen. Returnerer nul, hvis køen er tom * / System.out.println ('poll ():' + q1.poll ()) / * * peek () -metoden - den fungerer som element () -metoden, * men den returnerer null hvis køen er tom * / System.out.println ('peek ():' + q1.peek ()) // Viser elementerne i Queue System.out.println ('Elements in Queue:' + q1)} }

Produktion:

Elementer i kø: [I, Love, Rock, And, Roll]

Fjernet element: I

Hoved: Kærlighed

afstemning (): Kærlighed

kig (): Rock

java forskel mellem hashmap og hashtable

Elementer i kø: [Rock, And, Roll]. I ovenstående eksempel er Generic Queue blevet brugt.

I denne kø kan vi begrænse typen af ​​objekt indsat i køen. I vores eksempel kan vi kun indsætte strengforekomster i køen.

Iterering gennem en Java-kø

Elementer i en java-kø kan gentages ved hjælp af følgende kode:

Kø q1 = ny LinkedList ()

q1.add (“Rock”)

q1.add ('Og')

q1.add ('Roll')

// adgang via Iterator

Iterator iterator = q1.iterator ()

mens (iterator.hasNext () {

Strengelement = (Streng) iterator.next ()

}

// adgang via ny for-loop

for (Objektobjekt: q1) {

String element = (String) objekt

}

Den rækkefølge, som elementerne gentages, afhænger af implementeringen af ​​køen.

Mens der er flere metoder, som en Java-kø kan implementere, er de vigtigste metoder blevet diskuteret her.

Således er vi nået til slutningen af ​​denne artikel om 'Java-kø'. Hvis du ønsker at lære mere,tjek af Edureka, et pålideligt online læringsfirma. Edurekas Java J2EE- og SOA-uddannelses- og certificeringskursus er designet til at træne dig til både kerne- og avancerede Java-koncepter sammen med forskellige Java-rammer som Hibernate & Spring.

Har du et spørgsmål til os? Nævn det i kommentarsektionen på denne blog, og vi vender tilbage til dig hurtigst muligt.