Programmiersprache Dart: Queues (2021)
Jede(r) stand schon mal in einer Warteschlange. Am Ende kommen neue Personen hinzu, am Kopf verlassen Personen die Warteschlange.
Was Queues in Dart angeht, hinkt der Vergleich ein wenig.
Ein Queue in Dart is eine Datensammlung, die an beiden Enden manipuliert werden kann.
Wer sich schon näher mit Dart befasst hat, wird hier sicherlich eine gewisse Nähe zu Stream entdecken, wobei Streams einen anderen Bereich abdecken.
Queues in Dart funktionieren nach dem FIFO Prinzip. First In, First Out. Wer zuerst in der Warteschlange war, ist auch zuerst wieder draußen.
Wichtig: Queue ist Teil der dart:collection Library. Möchten Sie Klassen dieser Library nutzen, müssen Sie sie importieren mit: import 'dart:collection';
Erstes Beispiel:
Im Code oben sehen Sie gleich eine Variante einen Queue, aus einer bestehenden Liste zu erstellen. Mit Queue.from können Sie eine Liste wandeln und ein neues Objekt erschaffen, in diesem Beispiel meineSchlange.
Sie können natürlich auch zuerst einen leeren Queue erstellen und ihm dann Werte zufügen:
Die Methode .add(...) fügt unserer Queue ein Element am Ende hinzu ! Das Gegenstück dazu ist die Methode .addFirst(...) , welche ein Element am Anfang der Schlange einfügt.
Wir können einen Queue aber auch um mehrere Werte ergänzen. Mit der Methode .addAll(...) können Sie ein Iterable, meistens eine Liste, dem Queue hinzufügen. Hier ein Beispielcode:
Im Code oben habe ich die Methode .addLast(...) nicht erwähnt. Wie .add(...) fügt sie ein Element am Ende der Schlange ein.
Nun können Sie natürlich auch Elemente aus der Schlange entfernen:
Mit der Methode .remove(...) entfernen Sie das Element, das Sie als Argument übergeben. Die Methode gibt true zurück, falls das Element entfernt werden konnte.
.removeFirst(...) entfernt das erste Element aus der Queue und gibt es zurück. Um das letzte Element aus der Queue zu entfernen, können Sie .removeLast(...) verwenden. Es returniert ebenfalls das entfernte Element.
Die Queue Klasse bietet noch weitere Methoden. Nähere Informationen dazu finden Sie hier. Bis bald.
Kommentare
Kommentar veröffentlichen