Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Biblioteka klas platformy .NET udostępnia wiele ogólnych klas kolekcji w przestrzeniach nazw System.Collections.Generic i System.Collections.ObjectModel. Aby uzyskać bardziej szczegółowe informacje o tych klasach, zobacz Często używane typy kolekcji.
System.Collections.Generic
Wiele typów kolekcji ogólnych jest bezpośrednimi analogiami typów niegenerycznych. Dictionary<TKey,TValue> jest wersją ogólną Hashtable; używa ogólnej struktury KeyValuePair<TKey,TValue> do wyliczenia zamiast DictionaryEntry.
List<T> jest ogólną wersją programu ArrayList. Istnieją klasy ogólne Queue<T> i Stack<T> , które odpowiadają niegenerycznych wersji.
Istnieją ogólne i niegeneryczne wersje programu SortedList<TKey,TValue>. Obie wersje są hybrydami słownika i listy. Klasa SortedDictionary<TKey,TValue> ogólna jest czystym słownikiem i nie ma niegenericznego odpowiednika.
Klasa LinkedList<T> ogólna jest prawdziwą połączoną listą. Nie ma on niegenericznego odpowiednika.
System.Collections.ObjectModel
Klasa Collection<T> ogólna udostępnia klasę bazową do wyprowadzania własnych typów kolekcji ogólnych. Klasa ReadOnlyCollection<T> zapewnia łatwy sposób tworzenia kolekcji w trybie tylko do odczytu z dowolnego typu, który implementuje generyczny interfejs IList<T>. Klasa KeyedCollection<TKey,TItem> ogólna umożliwia przechowywanie obiektów zawierających własne klucze.
Inne typy ogólne
Struktura Nullable<T> ogólna umożliwia używanie typów wartości tak, jakby mogły być przypisane null
. Może to być przydatne podczas pracy z zapytaniami bazy danych, gdzie brakuje pól zawierających typy wartości. Parametr typu ogólnego może być dowolnym typem wartości.
Uwaga / Notatka
W językach C# i Visual Basic nie jest konieczne jawne użycie Nullable<T> , ponieważ język ma składnię dla typów dopuszczanych do wartości null. Zobacz Typy wartości dopuszczanych do wartości null (referencja C#) i Typy wartości dopuszczanych do wartości null (referencja Visual Basic).
Struktura ArraySegment<T> ogólna umożliwia rozdzielenie zakresu elementów w jednowymiarowej, zerowej tablicy dowolnego typu. Parametr typu ogólnego jest typem elementów tablicy.
Delegat EventHandler<TEventArgs> ogólny eliminuje konieczność deklarowania typu delegata do obsługi zdarzeń, jeśli zdarzenie jest zgodne ze wzorcem obsługi zdarzeń używanym przez platformę .NET. Załóżmy na przykład, że utworzyłeś klasę MyEventArgs
, pochodzącą z klasy EventArgs, aby przechowywać dane dla Twojego wydarzenia. Następnie można zadeklarować zdarzenie w następujący sposób:
public event EventHandler<MyEventArgs> MyEvent;
Public Event MyEvent As EventHandler(Of MyEventArgs)