Warteschlange in Java instanziieren

Bishal Awasthi 12 Oktober 2023
  1. Verwenden Sie die Klasse LinkedList, um ein Queue-Objekt in Java zu implementieren
  2. Verwenden Sie die Klasse ArrayDeque, um ein Queue-Objekt in Java zu implementieren
Warteschlange in Java instanziieren

Dieser Artikel stellt Methoden vor, um ein Queue-Objekt in Java zu instanziieren. In diesem Tutorial werden wir die Methodenaufrufe des instanziierten Objekts weiter beschreiben und implementieren. Eine Warteschlange ist eine Schnittstelle, und wir können ein Objekt nicht direkt erstellen. Aber wir können die Klasse implementieren, die bereits das Interface Queue implementiert. Einige dieser Klassen sind AbstractQueue, ArrayDeque, DelayQueue, LinkedList. Daher verwenden wir in diesem Tutorial die Klassen LinkedList und ArrayDeque, um Queue zu instanziieren.

Verwenden Sie die Klasse LinkedList, um ein Queue-Objekt in Java zu implementieren

Die Klasse LinkedList implementiert das Datenstrukturkonzept LinkedList. Es ist Teil des Collection-Frameworks und im Paket java.util verfügbar. Die Elemente in der LinkedList werden in Form von Zeigern und Adressen gespeichert. Das Element wird als Knoten bezeichnet. Wir können nicht direkt auf den Knoten in LinkedList zugreifen. Um auf einen Knoten zuzugreifen, müssen wir am Kopf beginnen und bis zu einem Knoten, auf den wir zugreifen möchten, folgen. Die LinkedList implementiert die List-Schnittstelle und erbt alle Methoden, die in der List-Schnittstelle und der Auflistungsschnittstelle vorhanden sind. Queue ist auch im gleichen Paket verfügbar. Wir können ein Objekt von Queue erstellen, das die Klasse LinkedList implementiert. Wir können die Funktion add() verwenden, um die Daten in der Warteschlange anzuhängen.

Importieren Sie zunächst Queue und LinkedList mit import java.util.Queue bzw. import java.util.LinkedList. Erstellen Sie dann eine Klasse QueueDemo und deklarieren Sie die Hauptmethode. Als nächstes instanziieren Sie ein Objekt queue, indem Sie die Klasse LinkedList implementieren. Rufen Sie die Methode add() mit dem Objekt auf und addieren Sie fünf Integer-Werte. Drucken Sie abschließend die Elemente der Warteschlange.

Im Beispiel haben wir eine Klasse LinkedList verwendet, die das Queue-Interface implementiert, um ein Queue-Objekt zu erstellen. Dies liegt daran, dass die Warteschlange eine Schnittstelle ist und wir ihr Objekt nicht direkt erstellen können. Wir haben beim Erstellen des Objekts den generischen Typ Integer angegeben, da wir den Integer-Wert in der Warteschlange speichern. Der Ausgabeabschnitt zeigt die in der Warteschlange gespeicherten Elemente an.

Beispielcode:

import java.util.LinkedList;
import java.util.Queue;
public class QueueDemo {
  public static void main(String[] args) {
    Queue<Integer> queue = new LinkedList<>();
    queue.add(8);
    queue.add(9);
    queue.add(10);
    queue.add(2);
    queue.add(5);
    System.out.println("Added Queue in memory: " + queue);
  }
}

Ausgabe:

Added Queue in memory: [8, 9, 10, 2, 5]

Verwenden Sie die Klasse ArrayDeque, um ein Queue-Objekt in Java zu implementieren

Die Java-Sprache hat die Klasse ArrayDeque als Teil des Collection-Frameworks definiert. Es erzeugt einen leeren Satz von Speicherplätzen mit einer Anfangskapazität, die ausreicht, um sechzehn Elemente aufzunehmen. ArrayDeque wird auch Array Double Ended Queue genannt, was es uns ermöglicht, ein Element von beiden Seiten einzufügen oder zu löschen. Es implementiert einen Stack (Last-In-First-Out) oder eine Queue (First-In-First-Out). Daher können wir mit der Implementierung der Klasse ArrayDeque ein Objekt von Queue erstellen.

Importieren Sie die Pakete wie oben, aber stellen Sie sicher, dass Sie in dieser Methode das ArrayDeque anstelle der LinkedList importieren. Erstellen Sie dann eine Klasse Demo und deklarieren Sie die Hauptmethode. Implementieren Sie dann die Klasse ArrayDeque, indem Sie das Interface Queue instanziieren. Erstellen Sie ein Objekt von Queue als aq. Verwenden Sie das Objekt aq, um die Methode add() viermal aufzurufen. Füge vier verschiedene Zeichenketten hinzu. Drucken Sie zum Schluss das Objekt aq.

Im folgenden Beispiel haben wir beim Anlegen des Objekts den generischen Typ String verwendet. Dies liegt daran, dass wir Zeichenkettenelemente in die Warteschlange einfügen. Somit haben wir ein Queue-Objekt instanziiert, das die ArrayDeque-Klasse implementiert.

Beispielcode:

import java.util.ArrayDeque;
import java.util.Queue;
public class Demo {
  public static void main(String[] args) {
    Queue<String> aq = new ArrayDeque<String>();
    aq.add("first");
    aq.add("second");
    aq.add("third");
    aq.add("fourth");
    System.out.println("Added Queue in memory: " + aq);
  }
}

Ausgabe:

Added Queue in memory: [first, second, third, fourth]

Verwandter Artikel - Java Queue