2009-09-04 10 views
12

Powiel możliwe:
Which collection for storing unique strings?Używanie HashTable do przechowywania tylko kluczy?

Obecnie używam słownika < ciąg, bool>, aby zapisać listę unikalnych identyfikatorów. Te identyfikatory nie muszą zawierać żadnych danych - używam Słownika, aby móc szybko sprawdzić duplikaty.

Ponieważ potrzebuję tylko kluczy i nie ma wartości, to słownik jest tutaj, czy istnieje inna kolekcja, o której nie wiem, która byłaby bardziej odpowiednia?

+0

dup: http://stackoverflow.com/questions/692853/which-collection-for-storing-unique-strings – tanascius

+0

Należy wspomnieć, że jest to dla Framework 2.0. Słownik to jest wtedy. Może mogę użyć wartości bool dla czegoś :) – jnylen

Odpowiedz

22

. NET 3.5 zawiera typ kolekcji HashSet<T>, który brzmi tak, jak chcesz.

15
+1

Który jest dostępny w .NET 3.5 i późniejszym. –

+0

@ 0xA3: Ale które można łatwo użyć w .NET 2.0, po prostu kopiując te dwie klasy mono do kodu ... https://raw.githubusercontent.com/mono/mono/master/mcs/class/System.Core /System.Collections.Generic/HashSet.cs i https://raw.githubusercontent.com/mono/mono/master/mcs/class/corlib/System.Collections/HashPrimeNumbers.cs –