C#-Warteschlange mit Beispielen: Was ist eine C#-Warteschlange und wie wird sie verwendet?
Was ist Warteschlange in C#?
Die Queue ist eine spezielle Fallsammlung, die ein First-In-First-Out-Konzept darstellt. Stellen Sie sich eine Schlange von Menschen vor, die auf den Bus warten. Normalerweise ist die erste Person, die sich in die Warteschlange betritt, auch die erste Person, die den Bus betritt. Ebenso ist die letzte Person, die sich in die Warteschlange betritt, auch die letzte Person, die den Bus betritt. Elemente werden übereinander zur Warteschlange hinzugefügt.
Der Vorgang, ein Element zur Warteschlange hinzuzufügen, ist die Enqueuer-Operation. Um ein Element aus einer Warteschlange zu entfernen, können Sie die Dequeuer-Operation verwenden. Die Operation in Queues C# ähnelt dem Stack, den wir zuvor gesehen haben.
Sehen wir uns genauer an, wie Queue in C# verwendet wird und welche Vorgänge für die Queue-Sammlung in C# verfügbar sind.
Deklaration der Warteschlange
Die Deklaration einer Warteschlange ist unten angegeben. Mit Hilfe des Queue-Datentyps wird eine Queue erstellt. Das Schlüsselwort „new“ wird verwendet, um ein Objekt einer Warteschlange zu erstellen. Das Objekt wird dann der Variablen qt zugewiesen.
Queue qt = new Queue()
Elemente zur Warteschlange hinzufügen
Mit der Enqueue-Methode wird ein Element zur Warteschlange hinzugefügt. Die allgemeine Syntax der Anweisung ist unten angegeben.
Queue.enqueue(element)
Elemente aus der Warteschlange entfernen
Die Dequeue-Methode wird verwendet, um ein Element aus der Warteschlange zu entfernen. Die Dequeue-Operation gibt das erste Element der Warteschlange zurück. Die allgemeine Syntax der Anweisung ist unten angegeben
Queue.dequeue()
Zu Zählen
Diese Eigenschaft wird verwendet, um die Anzahl der Elemente in der Warteschlange abzurufen. Nachfolgend finden Sie die allgemeine Syntax dieser Anweisung.
Queue.Count
Enthält
Diese Methode wird verwendet, um festzustellen, ob ein Element in der Warteschlange vorhanden ist. Nachfolgend finden Sie die allgemeine Syntax dieser Anweisung. Die Anweisung gibt „true“ zurück, wenn das Element existiert, andernfalls gibt sie den Wert „false“ zurück.
Queue.Contains(element)
Sehen wir uns nun an, wie dies auf Codeebene funktioniert. Der gesamte unten genannte Code wird in unsere Konsolenanwendung geschrieben.
Der Code wird in unsere Program.cs-Datei geschrieben. Im folgenden Programm schreiben wir den Code, um zu sehen, wie wir die oben genannten Methoden verwenden können.
Beispiel
In diesem Beispiel einer Warteschlange in C# sehen wir, wie eine Warteschlange erstellt wird. Als Nächstes erfahren Sie, wie Sie die Elemente der Warteschlange anzeigen und die Methoden Count und Contain verwenden.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Queue qt = new Queue(); qt.Enqueue(1); qt.Enqueue(2); qt.Enqueue(3); foreach (Object obj in qt) { Console.WriteLine(obj); } Console.WriteLine(); Console.WriteLine(); Console.WriteLine("The number of elements in the Queue " + qt.Count); Console.WriteLine("Does the Queue contain " + qt.Contains(3)); Console.ReadKey(); } } }
Code Erklärung
- Der erste Schritt dient der Deklaration der Warteschlange. Hier deklarieren wir qt als Variable, um die Elemente unserer Warteschlange zu speichern.
- Als nächstes fügen wir unserer Warteschlange drei Elemente hinzu. Jedes Element wird über die „enqueue“-Methode hinzugefügt.
- Nun muss bei Warteschlangen beachtet werden, dass auf die Elemente nicht über die Indexposition wie bei zugegriffen werden kann Anordnungsliste. Wir müssen einen anderen Ansatz verwenden, um die Elemente der Warteschlange anzuzeigen. So gehen wir also vor, um die Elemente einer Warteschlange anzuzeigen.
- Wir deklarieren zunächst eine temporäre Variable namens obj. Dies wird verwendet, um jedes Element der Warteschlange zu speichern.
- Anschließend verwenden wir die foreach-Anweisung, um jedes Element der Warteschlange durchzugehen.
- Für jedes Queue-Element wird der Wert der obj-Variablen zugewiesen.
- Anschließend verwenden wir den Befehl Console.Writeline, um den Wert auf der Konsole anzuzeigen.
- Wir verwenden die Eigenschaft „Count“, um die Anzahl der Elemente in der Warteschlange zu ermitteln. Diese Eigenschaft gibt eine Zahl zurück. Diesen Wert zeigen wir dann auf der Konsole an.
- Anschließend verwenden wir die Methode „Contains“, um zu prüfen, ob der Wert 3 in unserer Warteschlange vorhanden ist. Dies gibt entweder einen wahren oder einen falschen Wert zurück. Diesen Rückgabewert zeigen wir dann auf der Konsole an.
Wenn der obige Code richtig eingegeben und das Programm ausgeführt wird, wird die folgende Ausgabe angezeigt.
Ausgang
Anhand der Ausgabe können wir deutlich erkennen, dass die Elemente der Warteschlange angezeigt werden. Beachten Sie, dass im Gegensatz zu „Stapel„In „Warteschlange“ wird das erste in die Warteschlange geschobene Element zuerst angezeigt. Die Anzahl der Warteschlangenelemente wird ebenfalls in der Ausgabe angezeigt. Außerdem wird der Wert „True“ angezeigt, um anzuzeigen, dass der Wert 3 für die Warteschlange definiert ist.
C#-Warteschlange Aus der Warteschlange entfernen
Schauen wir uns nun die Entfernungsfunktion an. Wir werden den Code sehen, der erforderlich ist, um das letzte Element aus der Warteschlange zu entfernen.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Queue qt = new Queue(); qt.Enqueue(1); qt.Enqueue(2); qt.Enqueue(3); qt.Dequeue(); foreach (Object obj in qt) { Console.WriteLine(obj); } Console.ReadKey(); } } }
Code Erklärung
- Hier führen wir lediglich die Methode „dequeue“ aus, mit der ein Element aus der Warteschlange entfernt wird. Diese Methode entfernt das erste Element der Warteschlange.
Wenn der obige Code richtig eingegeben und das Programm ausgeführt wird, wird die folgende Ausgabe angezeigt.
Ausgang:
Aus der Ausgabe können wir ersehen, dass das erste Element, das zur Warteschlange hinzugefügt wurde, nämlich Element 1, aus der Warteschlange entfernt wurde.
Zusammenfassung
Eine Warteschlange basiert auf dem First-In-First-Out-Konzept. Der Vorgang des Hinzufügens eines Elements zur Warteschlange wird als Enqueue-Vorgang bezeichnet. Der Vorgang des Entfernens eines Elements aus der Warteschlange wird als Dequeue-Vorgang bezeichnet.