Ich bin auf der Suche nach einer Implementierung von java.util.Queue oder etwas in der Google-Sammlung, die sich wie eine Warteschlange verhalten, aber auch sicherstellen, dass jedes Element der Warteschlange eindeutig ist. (alle weiteren Insertionen haben keine Wirkung)Eine Warteschlange, die die Einzigartigkeit der Elemente gewährleistet?
Es ist möglich, oder muss ich es manuell machen?
Momentan verwende ich eine Warteschlange mit einer LinkedList-Implementierung, und ich überprüfe die Eindeutigkeit vor dem Einfügen. (Ich benutze dazu eine Side Map, um Elemente aus der Side Map vor/nach der Queue hinzuzufügen/zu entfernen). Ich mag es nicht zu sehr.
Jede Eingabe ist willkommen. Wenn es nicht im Paket java.util ist, ist es vielleicht eine schlechte Idee?
Das Problem ist, dass Queue nicht implementiert wird und daher keine Möglichkeit besteht, Elemente in FIFO-Reihenfolge zu entfernen. – Adamski
@Adamski - Entfernen von Elementen in FIFO-Reihenfolge ist einfach. Siehe mein Update. – erickson
Einfach genug, um LinkedHashSet zu erweitern, um Push und Pop hinzuzufügen. Nicht effizient, aber naiv Pop könnte sein: Iterator it = iterator(); T Ergebnis = it.next(); it.remove(); Ergebnis zurückgeben; –