Heim  >  Artikel  >  Java  >  Was ist in Java der Unterschied zwischen der Methode add() und der Methode offer() in der Warteschlange?

Was ist in Java der Unterschied zwischen der Methode add() und der Methode offer() in der Warteschlange?

PHPz
PHPznach vorne
2023-08-27 14:25:061071Durchsuche

Was ist in Java der Unterschied zwischen der Methode add() und der Methode offer() in der Warteschlange?

Queue in Java ist eine lineare Datenstruktur mit mehreren Funktionen. Eine Warteschlange hat zwei Endpunkte und folgt beim Einfügen und Löschen ihrer Elemente dem FIFO-Prinzip (First-In-First-Out). In diesem Tutorial lernen wir zwei wichtige Funktionen der Warteschlange in Java kennen: add() und Offer().

Was ist eine Warteschlange?

Die Warteschlange in Java ist eine Schnittstelle, die die Util- und Collection-Pakete erweitert. Elemente werden im Backend eingefügt und im Frontend entfernt. Warteschlangen in Java können mithilfe von Klassen wie verknüpften Listen, DeQueue und Prioritätswarteschlangen implementiert werden. Eine Prioritätswarteschlange ist eine erweiterte Form einer normalen Warteschlange, bei der jedes Element eine Priorität hat.

Add()-Methode der Warteschlange

Diese Methode wird verwendet, um Elemente in die Warteschlange einzufügen. Es fügt das definierte Element (das als Argument übergebene Element) am Ende der Warteschlange hinzu und gibt nur dann „true“ zurück, wenn das definierte Element erfolgreich am Ende hinzugefügt wurde. Die Methode add() löst eine Ausnahme aus, wenn das Element nicht am Ende der Warteschlange hinzugefügt wird.

Mit dieser Methode können wir der Warteschlange Ganzzahl- und Zeichenfolgenwerte hinzufügen.

Beispiel: add(3) Dadurch wird 3 am Ende der Warteschlange eingefügt.

Die Methode

add() akzeptiert immer einige Parameterwerte. Sie können ihr keine Nullwerte übergeben, da Queue keine Nullwerte akzeptiert. In diesem Fall wird eine Ausnahme ausgelöst.

Ausnahmetyp in der add()-Methode

  • IllegalStateException – Diese Java-Ausnahme tritt auf, wenn die Warteschlange ihre maximale Kapazität erreicht.

  • NullPointerException – Beim Versuch, einen Nullwert über die add()-Methode einzugeben, weil die Warteschlange keine Nullwerte akzeptiert.

Beispiel

Das folgende Programm zeigt, wie die add()-Methode in Queue in Java implementiert wird.

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);
   }
}

Ausgabe

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

offer()-Methode in der Warteschlange

Diese Methode wird zum Einfügen von Elementen in die Warteschlange verwendet. Die Elemente können Ganzzahl- oder Zeichenfolgendatentypen sein. Es fügt das angegebene Element basierend auf der Kapazität der Warteschlange ein. Es wird keine Ausnahme ausgelöst, wenn ein bestimmtes Element nicht in die Warteschlange eingefügt werden kann.

Es gibt True zurück, wenn ein Element erfolgreich in das Warteschlangen-Backend in Java eingefügt wurde. Wenn die Warteschlange ihre Kapazität überschreitet, gibt die Methode offer() false zurück.

Zum Beispiel

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

Beispiel

Das folgende Programm zeigt, wie offer() in Java implementiert wird.

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);
   
	}
}

Ausgabe

Queue is [Java, is, Good]

Unterschied zwischen den Methoden add() und Offer()

zurückgegeben Die

S.Nein

add()-Funktion

offer()-Methode

1

Die Funktion add() löst eine IllegalState-Ausnahme aus, wenn Sie versuchen, ein Element in eine volle Warteschlange einzufügen.

Wenn die Warteschlange voll ist oder die maximale Größe erreicht, wird keine Ausnahme ausgelöst, sondern „false“ zurückgegeben.

2

Nachdem das Queue-Element erfolgreich eingefügt wurde, gibt die Methode add() true zurück. Es wird kein False

offer()-Methode gibt True zurück, wenn das Element erfolgreich eingefügt wurde, und False, wenn das Queue-Element nicht eingefügt werden konnte.

3

Gehört zum Collection-Framework.

Dies ist eine Warteschlangenmethode.

Fazit

Der einzige Unterschied zwischen den Methoden add() und Offer() in Queue besteht darin, dass eine Ausnahme ausgelöst wird, wenn add() das Limit der Warteschlange überschreitet. Obwohl die Methode Offer() keine Ausnahme auslöst, gibt sie „True“ zurück, wenn das Element erfolgreich eingefügt wurde, und „False“, wenn das Element nicht in die Warteschlange eingefügt werden kann, weil die Warteschlange ihre maximale Kapazität erreicht hat.

Das obige ist der detaillierte Inhalt vonWas ist in Java der Unterschied zwischen der Methode add() und der Methode offer() in der Warteschlange?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen