NET Generic Set?

stemmen
10

Is er een generieke container uitvoering van de 'set' gedrag in .NET?

Ik weet dat ik kon gewoon gebruik maken van een Dictionary<T, Object>(en eventueel toe te voegen nullsals waarden), omdat de toetsen fungeren als een set, maar ik was benieuwd of er iets kant en klare.

De vraag is gesteld op 09/12/2008 om 20:21
bron van user
In andere talen...                            


3 antwoorden

stemmen
19

HashSet<T> in NET 3.5

antwoordde op 09/12/2008 om 20:27
bron van user

stemmen
3

Ik gebruik de Iesi.Collections. namespace die wordt geleverd met NHibernate (docs hier ) - misschien het overwegen waard als je in .NET <3,5

antwoordde op 09/12/2008 om 20:31
bron van user

stemmen
1

Geïntroduceerd in .NET 3.5: HashSet<T>(zie hieronder).

Geïntroduceerd in .NET 4.0: ISet<T>:

Biedt de basis-interface voor de onttrekking van sets. Deze interface biedt methoden voor de uitvoering van sets, die collecties die unieke elementen en concrete acties kunnen hebben.

De interface heeft twee implementaties van .NET 4+ BCL:

  • HashSet<T>:

    ... biedt hoge prestaties reeks operaties. Een set is een verzameling die geen dubbele elementen bevat en waarvan de elementen in willekeurige volgorde

  • SortedSet<T>:

    Vertegenwoordigt een verzameling van objecten die wordt gehandhaafd in gesorteerde volgorde. Een SortedSet (Of T) onderhoudt een gesorteerde volgorde als elementen zijn geplaatst en verwijderd zonder de prestaties te beïnvloeden. Dubbele elementen zijn niet toegestaan.

FWIW: Er is ook een onder de namespace . Het enige doel lijkt te zijn van het gebruik bij de uitvoering van zijn .internal class TreeSet<T>: SortedSet<T>System.Collections.Generic
SortedDictionary<TKey, TValue>

antwoordde op 02/10/2013 om 17:06
bron van user

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