.NET Generika Set?

stimmen
10

Gibt es einen generischen Container das ‚Set‘ Verhalten in .NET implementieren?

Ich weiß , ich könnte nur verwenden Dictionary<T, Object>(und möglicherweise hinzufügen , nullsals Wert), weil sein Schlüssel als Set handeln, aber ich war neugierig , wenn es etwas fertig gemacht.

Veröffentlicht am 09/12/2008 um 20:21
quelle vom benutzer
In anderen Sprachen...                            


3 antworten

stimmen
19

HashSet<T> in .NET 3.5

Beantwortet am 09/12/2008 um 20:27
quelle vom benutzer

stimmen
3

Ich verwende die Iesi.Collections. Namespace, (docs mit NHibernate kommt hier ) - vielleicht eine Überlegung wert , wenn Sie in .NET sind <3.5

Beantwortet am 09/12/2008 um 20:31
quelle vom benutzer

stimmen
1

Eingeführt in .NET 3.5: HashSet<T>(siehe unten).

Eingeführt in .NET 4.0: ISet<T>:

Stellt die Basisschnittstelle für die Entnahme von Sätzen. Diese Schnittstelle stellt Methoden für die Implementierung Sets, die Sammlungen sind die einzigartigen Elemente und spezifische Operationen haben.

Die Schnittstelle hat zwei Implementierungen in .NET 4+ BCL:

  • HashSet<T>:

    ... bietet eine hohe Leistung Set-Operationen. Ein Satz ist eine Sammlung, die keine doppelte Elemente enthält, und deren Elemente in keiner bestimmten Reihenfolge

  • SortedSet<T>:

    Stellt eine Auflistung von Objekten, die in sortierter Reihenfolge eingehalten wird. A SortedSet (Of T) unterhält eine sortierter Reihenfolge als Elemente ohne Beeinträchtigung der Leistung eingefügt und gelöscht werden. Doppelte Elemente sind nicht erlaubt.

FWIW: Es gibt auch ein unter dem Namespace . Sein einziger Zweck scheint die Verwendung in der Umsetzung zu sein .internal class TreeSet<T>: SortedSet<T>System.Collections.Generic
SortedDictionary<TKey, TValue>

Beantwortet am 02/10/2013 um 17:06
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more