Maison  >  Article  >  Java  >  En Java, quelle est la différence entre la méthode add() et la méthode offer() dans la file d'attente ?

En Java, quelle est la différence entre la méthode add() et la méthode offer() dans la file d'attente ?

PHPz
PHPzavant
2023-08-27 14:25:061031parcourir

En Java, quelle est la différence entre la méthode add() et la méthode offer() dans la file dattente ?

La file d'attente en Java est une structure de données linéaire avec plusieurs fonctions. La file d'attente a deux points de terminaison et suit le principe premier entré, premier sorti (FIFO) pour insérer et supprimer ses éléments. Dans ce didacticiel, nous découvrirons deux fonctions importantes de la file d'attente en Java, à savoir add() et Offer().

Qu'est-ce qu'une file d'attente ?

La file d'attente en Java est une interface qui étend les packages util et collection. Les éléments sont insérés dans le backend et supprimés du frontend. Les files d'attente en Java peuvent être implémentées à l'aide de classes telles que les listes chaînées, DeQueue et les files d'attente prioritaires. Une file d'attente prioritaire est une forme étendue d'une file d'attente normale, dans laquelle chaque élément a une priorité.

Méthode Add() de file d'attente

Cette méthode est utilisée pour insérer des éléments dans la file d'attente. Il ajoute l'élément défini (l'élément passé en argument) à la fin de la file d'attente et renvoie vrai uniquement si l'élément défini est ajouté avec succès à la fin. La méthode add() lève une exception si l'élément n'est pas ajouté à la fin de la file d'attente.

En utilisant cette méthode, nous pouvons ajouter des valeurs entières et des chaînes à la file d'attente.

Exemple : add(3) Cela insérera 3 à la fin de la file d'attente.

La méthode

add() prend toujours certaines valeurs de paramètres. Vous ne pouvez pas lui transmettre de valeurs nulles car Queue n'accepte pas les valeurs nulles, auquel cas il lèvera une exception.

Type d'exception dans la méthode add()

  • IllegalStateException - Cette exception Java se produit lorsque la file d'attente atteint sa capacité maximale.

  • NullPointerException - Lorsque vous essayez de saisir une valeur nulle via la méthode add() car la file d'attente n'accepte pas les valeurs nulles.

Exemple

Le programme suivant montre comment implémenter la méthode add() dans Queue en Java.

import java.util.*; // importing util package with all its features

public class Main {
   public static void main(String[] args) {
      Queue<Integer> q = new LinkedList<>(); // queue declaration
      q.add(5); //adding elements to the queue
      q.add(6);
      q.add(4);
      q.add(1);
      q.add(8);
      
      System.out.println("Queue is: " + q);
   }
}

Sortie

Queue is: [5, 6, 4, 1, 8]

Méthode offer() dans la file d'attente

Cette méthode est utilisée pour insérer des éléments dans la file d'attente, les éléments peuvent être des types de données entiers ou chaîne. Il insère l'élément spécifié en fonction de la capacité de la file d'attente. Il ne lève aucune exception si un élément spécifique ne peut pas être inséré dans la file d'attente.

Il renvoie True lorsqu'un élément est inséré avec succès dans le backend de file d'attente en Java. Si la file d'attente dépasse sa capacité, la méthode offer() renvoie false.

Par exemple

offer(3) : this will insert 3 into the queue
offer(“Java”) : this will insert Java into the queue

Exemple

Le programme ci-dessous montre comment implémenter offer() en Java.

import java.util.*; // importing util package with all its features

public class Main {
   public static void main(String[] args) {
      Queue<String> q = new LinkedList<>(); // queue declaration
      q.offer("Java"); //inserting elements to the queue
      q.offer("is");
      q.offer("Good");
		
      System.out.println("Queue is " + q);
   
	}
}

Sortie

Queue is [Java, is, Good]

Différence entre les méthodes add() et Offer()

La méthode

S.No

fonction add()

méthode offer()

1

La fonction add() lève une exception IllegalState lorsque vous essayez d'insérer un élément dans une file d'attente complète.

Lorsque la file d'attente est pleine ou atteint la taille maximale, elle ne lève aucune exception mais renvoie false.

2

Après avoir inséré avec succès l'élément de file d'attente, la méthode add() renvoie true. Il ne renvoie pas False

offer() renvoie True lorsque l'élément est inséré avec succès et False lorsque l'élément Queue ne parvient pas à être inséré.

3

Appartient au framework Collection.

Il s'agit d'une méthode de file d'attente.

Conclusion

La seule différence entre les méthodes add() et Offer() dans Queue est que si add() dépasse la limite de la file d'attente, une exception sera levée. Bien que la méthode Offer() ne lève aucune exception, elle renvoie true si l'élément est inséré avec succès et False si l'élément ne peut pas être inséré dans la file d'attente car celle-ci a atteint sa capacité maximale.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer