er et kraftig programmeringsspråk og det støtter ulike datastrukturer for å gjøre livet til programmererne enkelt. I denne artikkelen vil vi se på en slik datastruktur som er Java-kø. Dette er tipsene denne artikkelen fokuserer på,
- Kø i Java
- Implementering av Java-kø
- Metoder i Java-kø
- Program for å demonstrere kømetoder
- Iterere gjennom en Java-kø
La oss komme i gang da,
Kø i Java
En kø er en datastruktur som følger prinsippet til FIFO (First-In-First-Out), dvs. elementene settes inn på slutten av listen og slettes fra begynnelsen av listen. Dette grensesnittet er tilgjengelig i java.util.package og utvider Collection Interface.
Kø støtter flere metoder, inkludert innsetting og sletting. Køene som er tilgjengelige i java.util.package er kjent som Ubegrensede køer , mens køene som er tilstede i java.util.concurrent-pakken er kjent er Avgrensede køer.
Alle køer, unntatt Deques, støtter innføring på slutten og sletting fra fronten. Deques støtter innsetting og sletting av elementer i begge ender.
La oss gå til neste emne i denne artikkelen om Java-kø,
Implementering av Java-kø
For å kunne bruke køgrensesnittet, må vi sette i gang en konkret klasse. Følgende er noen få implementeringer som kan brukes:
- util.LinkedList
- util.PriorityQueue
Siden disse implementeringene ikke er trådsikre, fungerer PriorityBlockingQueue som et alternativ for trådsikker implementering.
Eksempel:
Kø q1 = ny LinkedList ()
Kø q2 = ny PriorityQue ()
La oss ta en titt på noen viktige Java-kømetoder,
hvordan du avslutter en metode i java
Metoder i Java-kø
- legge til(): Add () -metoden brukes til å sette inn elementer på slutten, eller på baksiden av køen. Metoden er arvet fra Collection-grensesnittet.
- by på(): Offer () -metoden er å foretrekke fremfor add () -metoden, da den setter inn det angitte elementet i køen uten å bryte noen kapasitetsbegrensninger.
- titt (): Peek () -metoden brukes til å se på forsiden av køen uten å fjerne den. Hvis køen er tom, returnerer den en nullverdi.
- element(): Hvis køen er tom, kaster metoden NoSuchElementException.
- ta vekk(): Fjern () -metoden fjerner fronten av køen og returnerer den. Kaster NoSuchElementException hvis køen er tom.
- avstemming(): Poll () -metoden fjerner begynnelsen på køen og returnerer den. Hvis køen er tom, returnerer den en nullverdi.
En oversikt over følgende metoder er gitt som følger:
Operasjon | Kaster unntak | Returnerer verdi |
Sett inn | legg til (element) | tilbud (element) |
Ta vekk | ta vekk() | avstemming() |
Undersøke | element() | kikke () |
La oss ta en titt på demonstrasjonen nå,
Program for å demonstrere kømetoder
import java.util. * public class Main {public static void main (String [] args) {// Vi kan ikke opprette forekomst av en kø siden det er et grensesnitt, og dermed kø q1 = ny LinkedList () // Legge til elementer i 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 hjelp av remove () -metoden, * dette fjerner det første elementet fra køen * / System.out.println (' Fjernet element: '+ q1.remove ( )) / * * element () metode - dette returnerer hodet til * køen. * / System.out.println ('Head:' + q1.element ()) / * * poll () metode - dette fjerner og returnerer * hodet til køen. Returnerer null 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 elementene i Queue System.out.println ('Elements in Queue:' + q1)} }
Produksjon:
Elementer i kø: [I, Love, Rock, And, Roll]
generere tilfeldig streng i java
Fjernet element: Jeg
Hode: Kjærlighet
meningsmåling (): Kjærlighet
titt (): Rock
Elementer i kø: [Rock, And, Roll]. I eksemplet ovenfor har Generisk kø blitt brukt.
I denne typen kø kan vi begrense typen objekt som er satt inn i køen. I vårt eksempel kan vi bare ha strengforekomster satt inn i køen.
Iterere gjennom en Java-kø
Elementer i en java-kø kan gjentas ved hjelp av følgende kode:
Kø q1 = ny LinkedList ()
q1.add (“Rock”)
q1.add (“Og”)
q1.add ('Roll')
// tilgang via Iterator
c ++ stl intervju spørsmål
Iterator iterator = q1.iterator ()
while (iterator.hasNext () {
Strengelement = (String) iterator.next ()
}
// tilgang via ny for-loop
for (Objektobjekt: q1) {
Strengelement = (Streng) -objekt
}
Sekvensen som elementene gjentas avhenger av implementeringen av køen.
Selv om det er flere metoder som en Java-kø kan implementere, har de viktigste metodene blitt diskutert her.
Dermed har vi kommet til en slutt på denne artikkelen om ‘Java Queue’. Hvis du ønsker å lære mer,sjekk ut av Edureka, et pålitelig online læringsfirma. Edurekas Java J2EE- og SOA-opplæring og sertifiseringskurs er designet for å trene deg for både kjerne- og avanserte Java-konsepter sammen med forskjellige Java-rammer som Hibernate & Spring.
Har du et spørsmål til oss? Vennligst nevn det i kommentarfeltet på denne bloggen, så kommer vi tilbake til deg så snart som mulig.