Java Queue: tutto ciò che devi sapere sulla coda in Java



In questo articolo prenderemo una popolare struttura dati Java nota come Java Queue. Useremo anche esempi programmatici adatti per una migliore comprensione.

è un potente linguaggio di programmazione e supporta varie strutture di dati per semplificare la vita dei programmatori. In questo articolo daremo un'occhiata a una di queste strutture dati che è Java Queue. Questi sono i suggerimenti su cui questo articolo si concentra,

Cominciamo allora,





Coda in Java

Una coda è una struttura dati che segue il principio FIFO (First-In-First-Out) ovvero gli elementi vengono inseriti alla fine della lista, e vengono cancellati dall'inizio della lista. Questa interfaccia è disponibile in java.util.package ed estende l'interfaccia di raccolta.

La coda supporta più metodi, inclusi l'inserimento e l'eliminazione. Le code disponibili in java.util.package sono note come Code illimitate , mentre si conoscono le code presenti nel pacchetto java.util.concurrent Code limitate.



Tutte le code, eccetto le Deques, supportano l'inserimento alla fine e la cancellazione dal fronte. Deques supporta l'inserimento e la cancellazione di elementi su entrambe le estremità.

c ++ ordina un array

Passiamo all'argomento successivo di questo articolo su Java Queue,

Implementazione di Java Queue

Per utilizzare l'interfaccia della coda, dobbiamo istanziare una classe concreta. Di seguito sono riportate le poche implementazioni che possono essere utilizzate:



  • util.LinkedList
  • util.PriorityQueue

Poiché queste implementazioni non sono thread-safe, PriorityBlockingQueue funge da alternativa per l'implementazione thread-safe.

Esempio:

Queue q1 = new LinkedList ()
Queue q2 = new PriorityQueue ()

Diamo un'occhiata ad alcuni importanti metodi Java Queue,

Metodi in Java Queue

  • Inserisci(): Il metodo add () viene utilizzato per inserire elementi alla fine o in coda alla coda. Il metodo viene ereditato dall'interfaccia Collection.
  • offrire(): Il metodo offer () è preferibile al metodo add (), poiché inserisce l'elemento specificato nella coda senza violare alcuna limitazione di capacità.
  • sbirciare(): Il metodo peek () viene utilizzato per guardare la parte anteriore della coda senza rimuoverla. Se la coda è vuota, restituisce un valore nullo.
  • elemento(): Se la coda è vuota, il metodo genera NoSuchElementException.
  • rimuovere(): Il metodo remove () rimuove la parte anteriore della coda e la restituisce. Genera NoSuchElementException se la coda è vuota.
  • sondaggio(): Il metodo poll () rimuove l'inizio della coda e lo restituisce. Se la coda è vuota, restituisce un valore nullo.

Di seguito viene fornita una panoramica dei seguenti metodi:

Operazione

Genera un'eccezione

Valore restituito

Inserire

aggiungi (elemento)

offerta (elemento)

Rimuovere

vai a ordinare c ++

rimuovere()

sondaggio()

Esaminare

elemento()

sbirciare()

Diamo ora un'occhiata alla dimostrazione,

Programma per dimostrare i metodi di coda

import java.util. * public class Main {public static void main (String [] args) {// Non possiamo creare istanze di Queue poiché è un'interfaccia, quindi Queue q1 = new LinkedList () // Adding elements to the Queue q1.add ('I') q1.add ('Love') q1.add ('Rock') q1.add ('And') q1.add ('Roll') System.out.println ('Elements in Queue: '+ q1) / * * Possiamo rimuovere un elemento da Queue usando il metodo remove (), * questo rimuove il primo elemento da Queue * / System.out.println (' Removed element: '+ q1.remove ( )) / * * element () metodo: restituisce l'intestazione * Queue. * / System.out.println ('Head:' + q1.element ()) / * * poll () metodo - rimuove e restituisce il * capo della coda. Restituisce null se la coda è vuota * / System.out.println ('poll ():' + q1.poll ()) / * * peek () metodo - funziona come il metodo element (), * tuttavia, restituisce null se la coda è vuota * / System.out.println ('peek ():' + q1.peek ()) // Visualizzazione degli elementi di Queue System.out.println ('Elements in Queue:' + q1)} }

Produzione:

Elementi in coda: [I, Love, Rock, And, Roll]

Elemento rimosso: I.

Testa: amore

poll (): Amore

peek (): Rock

Elementi in coda: [Rock, And, Roll]. Nell'esempio precedente, è stata utilizzata la coda generica.

In questo tipo di coda, possiamo limitare il tipo di oggetto inserito nella coda. Nel nostro esempio, possiamo avere solo istanze di stringa inserite nella coda.

Iterazione attraverso una coda Java

Gli elementi in una coda java possono essere iterati utilizzando il codice seguente:

Queue q1 = new LinkedList ()

q1.add ('Rock')

q1.add ('E')

cos'è un'istanza in java

q1.add ('Roll')

// accesso tramite Iterator

Iteratore iteratore = q1.iterator ()

while (iterator.hasNext () {

Elemento stringa = (String) iterator.next ()

}

// accesso tramite nuovo ciclo for

for (Object object: q1) {

Elemento stringa = oggetto (String)

}

La sequenza in cui gli elementi vengono iterati dipende dall'implementazione di queue.

Sebbene esistano più metodi che una coda Java può implementare, i metodi più importanti sono stati discussi qui.

Così siamo giunti alla fine di questo articolo su 'Java Queue'. Se desideri saperne di più,controlla il da Edureka, una società di apprendimento online affidabile. Il corso di formazione e certificazione Java J2EE e SOA di Edureka è progettato per formarti sia sui concetti di base che avanzati su Java insieme a vari framework Java come Hibernate e Spring.

Hai domande per noi? Per favore, menzionalo nella sezione commenti di questo blog e ti risponderemo il prima possibile.