Interface Queue | Java

L’interface Queue est disponible dans le package java.util et hérite l’interface Collection.
 


 
 
La collection queue est utilisée pour contenir les éléments sur le point d’être traités, et fournit diverses opérations telles que l’insertion, la suppression, etc. Il s’agit d’une liste ordonnée dont l’utilisation est limitée à l’insertion d’éléments à la fin de la liste et à la suppression d’éléments depuis le début de la liste, c’est-à-dire qu’il suit la structure FIFO(First-In-First-Out).

Puisque Queue est une interface, Queue a besoin d’une classe concrète pour la déclaration, et les classes les plus courantes sont PriorityQueue et LinkedList en Java.
 

Les méthodes de l’interface Queue
Méthode
Description
boolean add(object) Il est utilisé pour insérer l’élément spécifié dans la queue et retourne TRUE en cas de succès.
boolean offer(object) Il est utilisé pour insérer l’élément spécifié dans la queue.
Object remove() Il est utilisé pour récupérer et supprimer la tête du queue.
Object poll() Il est utilisé pour récupérer et supprimer la tête du queue, ou renvoie null si cette queue est vide.
Object element() Il est utilisé pour récupérer, mais ne supprime pas, la tête du queue.
Object peek() Il est utilisé pour récupérer, mais ne supprime pas, la tête du queue, ou renvoie null si cette queue est vide.

 
 

PriorityQueue

La classe PriorityQueue implémente l’interface Queue. Il contient les éléments ou objets à traiter selon leurs priorités. PriorityQueue ne permet pas de stocker des valeurs nulles dans la queue.
 

Exemple:
import java.util.*;

public class Main{
	
	public static void main(String args[]){
		
		Queue<String> queue = new PriorityQueue<String>();
	  
		queue.add("Java");
		queue.add("PHP");
		queue.add("Python");
		queue.add("Pascal");

		System.out.println("Tête: "+queue.peek());
		System.out.println(queue);
      
		queue.remove();
		queue.poll();
      
		//Aprés la suppression
		System.out.println(queue);
	}
}

 
Sortie:

Tête: Java
[Java, PHP, Python, Pascal]
[Pascal, Python]
QCM-Java

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *