File d'attente Java: tout ce que vous devez savoir sur la file d'attente en Java



Dans cet article, nous allons prendre une structure de données Java connue sous le nom de file d'attente Java. Nous utiliserons également des exemples programmatiques appropriés pour une meilleure compréhension.

est un langage de programmation puissant et il prend en charge diverses structures de données pour faciliter la vie des programmeurs. Dans cet article, nous examinerons une de ces structures de données, à savoir la file d'attente Java. Ce sont les pointeurs sur lesquels cet article se concentre,

Commençons alors,





File d'attente en Java

Une file d'attente est une structure de données qui suit le principe de FIFO (First-In-First-Out) c'est-à-dire que les éléments sont insérés à la fin de la liste, et sont supprimés à partir du début de la liste. Cette interface est disponible dans le java.util.package et étend l'interface de collecte.

La file d'attente prend en charge plusieurs méthodes, notamment l'insertion et la suppression. Les files d'attente disponibles dans java.util.package sont appelées Files d'attente illimitées , alors que les files d'attente présentes dans le package java.util.concurrent sont connues sont Files d'attente limitées.



Toutes les files d'attente, à l'exception des Deques, prennent en charge l'insertion à la fin et la suppression par l'avant. Deques prend en charge l'insertion et la suppression d'éléments aux deux extrémités.

Passons au sujet suivant de cet article sur Java Queue,

Implémentation de la file d'attente Java

Afin d'utiliser l'interface de file d'attente, nous devons instancier une classe concrète. Voici les quelques implémentations qui peuvent être utilisées:



  • util.LinkedList
  • util.PriorityQueue

Étant donné que ces implémentations ne sont pas thread-safe, PriorityBlockingQueue agit comme une alternative pour l'implémentation thread-safe.

Exemple:

File d'attente q1 = nouvelle LinkedList ()
Queue q2 = nouveau PriorityQueue ()

Jetons un coup d'œil à certaines méthodes importantes de la file d'attente Java,

comment analyser xml en java

Méthodes dans la file d'attente Java

  • ajouter(): La méthode add () est utilisée pour insérer des éléments à la fin ou à la fin de la file d'attente. La méthode est héritée de l'interface Collection.
  • offre(): La méthode offer () est préférable à la méthode add (), car elle insère l'élément spécifié dans la file d'attente sans violer aucune restriction de capacité.
  • coup d'oeil (): La méthode peek () est utilisée pour regarder le début de la file d'attente sans la supprimer. Si la file d'attente est vide, elle renvoie une valeur nulle.
  • élément(): Si la file d'attente est vide, la méthode lève NoSuchElementException.
  • retirer(): La méthode remove () supprime le début de la file d'attente et la renvoie. Lève NoSuchElementException si la file d'attente est vide.
  • sondage(): La méthode poll () supprime le début de la file d'attente et la renvoie. Si la file d'attente est vide, elle renvoie une valeur nulle.

Un aperçu des méthodes suivantes est donné comme suit:

Opération

Lève une exception

Valeur renvoyée

Insérer

ajouter (élément)

offre (élément)

Retirer

retirer()

sondage()

Examiner

élément()

coup d'oeil ()

Jetons un œil à la démonstration maintenant,

Programme pour démontrer les méthodes de file d'attente

import java.util. * public class Main {public static void main (String [] args) {// Nous ne pouvons pas créer d'instance de Queue car il s'agit d'une interface, donc nous Queue q1 = new LinkedList () // Ajout d'éléments la file d'attente q1.add ('I') q1.add ('Love') q1.add ('Rock') q1.add ('And') q1.add ('Roll') System.out.println ('Elements dans la file d'attente: '+ q1) / * * Nous pouvons supprimer un élément de la file d'attente en utilisant la méthode remove (), * cela supprime le premier élément de la file d'attente * / System.out.println (' Élément supprimé: '+ q1.remove ( )) / * * element () méthode - cela renvoie la tête de la * file d'attente. * / System.out.println ('Head:' + q1.element ()) / * * poll () méthode - cela supprime et renvoie la * tête de la file d'attente. Renvoie null si la file d'attente est vide * / System.out.println ('poll ():' + q1.poll ()) / * * méthode peek () - cela fonctionne de la même manière que la méthode element (), * cependant, il retourne null si la file d'attente est vide * / System.out.println ('peek ():' + q1.peek ()) // Affichage des éléments de la file d'attente System.out.println ('Elements in Queue:' + q1)} }

Production:

Éléments de la file d'attente: [I, Love, Rock, And, Roll]

Élément supprimé: I

Tête: Amour

comment utiliser anaconda python

sondage (): Amour

coup d'oeil (): Rock

Éléments de la file d'attente: [Rock, And, Roll]. Dans l'exemple ci-dessus, Generic Queue a été utilisé.

Dans ce type de file d'attente, on peut limiter le type d'objet inséré dans la file d'attente. Dans notre exemple, nous ne pouvons avoir que des instances de chaîne insérées dans la file d'attente.

Itération dans une file d'attente Java

Les éléments d'une file d'attente Java peuvent être itérés à l'aide du code suivant:

File d'attente q1 = nouvelle LinkedList ()

q1.add («Rock»)

q1.add («Et»)

q1.add («Rouler»)

// accès via Iterator

Itérateur itérateur = q1.iterator ()

while (iterator.hasNext () {

quelle méthode de classe de scanner lit une chaîne?

Élément de chaîne = (String) iterator.next ()

}

// accès via une nouvelle boucle for

for (Objet objet: q1) {

Élément String = (String) objet

}

L'ordre dans lequel les éléments sont itérés dépend de l'implémentation de la file d'attente.

Bien qu'il existe plusieurs méthodes qu'une file d'attente Java puisse implémenter, les méthodes les plus importantes ont été décrites ici.

Nous sommes donc arrivés à la fin de cet article sur «Java Queue». Si vous souhaitez en savoir plus,Vérifiez par Edureka, une entreprise d'apprentissage en ligne de confiance. Le cours de formation et de certification Java J2EE et SOA d'Edureka est conçu pour vous former aux concepts Java de base et avancés ainsi qu'à divers frameworks Java tels que Hibernate et Spring.

Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires de ce blog et nous vous répondrons dans les plus brefs délais.