Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die .NET-Klassenbibliothek stellt eine Reihe generischer Auflistungsklassen in den System.Collections.Generic und System.Collections.ObjectModel Namensräumen bereit. Ausführlichere Informationen zu diesen Klassen finden Sie unter Häufig verwendete Auflistungstypen.
System.Collections.Generic
Viele der generischen Sammlungstypen sind direkte Analoga von nichtgenerischen Typen. Dictionary<TKey,TValue> ist eine generische Version von Hashtable; sie verwendet die generische Struktur KeyValuePair<TKey,TValue> für die Enumeration anstelle von DictionaryEntry.
List<T> ist eine generische Version von ArrayList. Es gibt generische Queue<T> und Stack<T> Klassen, die den nichtgenerischen Versionen entsprechen.
Es gibt generische und nichtgenerische Versionen von SortedList<TKey,TValue>. Beide Versionen sind Hybride eines Wörterbuchs und einer Liste. Die SortedDictionary<TKey,TValue> generische Klasse ist ein reines Wörterbuch und hat kein nichtgenerisches Gegenstück.
Die LinkedList<T> generische Klasse ist eine echte verknüpfte Liste. Sie hat kein nichtgenerisches Gegenstück.
System.Collections.ObjectModel
Die Collection<T> generische Klasse stellt eine Basisklasse zum Ableiten eigener generischer Auflistungstypen bereit. Die ReadOnlyCollection<T> Klasse bietet eine einfache Möglichkeit zum Erstellen einer schreibgeschützten Auflistung von jedem Typ, der die IList<T> generische Schnittstelle implementiert. Die KeyedCollection<TKey,TItem> generische Klasse bietet eine Möglichkeit zum Speichern von Objekten, die ihre eigenen Schlüssel enthalten.
Andere generische Typen
Mit der Nullable<T> generischen Struktur können Sie Werttypen verwenden, als ob sie zugewiesen null
werden könnten. Dies kann beim Arbeiten mit Datenbankabfragen hilfreich sein, bei denen Felder mit Werttypen fehlen können. Der generische Typparameter kann ein beliebiger Werttyp sein.
Hinweis
In C# und Visual Basic ist es nicht erforderlich, Nullable<T> explizit zu verwenden, da die Sprache eine Syntax für nullable Typen bietet. Siehe Nullwertetypen (C#-Verweis) und Nullwertetypen (Visual Basic).
Die ArraySegment<T> generische Struktur bietet eine Möglichkeit, einen Bereich von Elementen innerhalb eines eindimensionalen, nullbasierten Arrays eines beliebigen Typs zu trennen. Der generische Typparameter ist der Typ der Elemente des Arrays.
Der EventHandler<TEventArgs> generische Delegat beseitigt die Notwendigkeit, einen Delegattyp zum Behandeln von Ereignissen zu deklarieren, wenn Ihr Ereignis dem von .NET verwendeten Ereignisbehandlungsmuster folgt. Angenommen, Sie haben eine MyEventArgs
Klasse erstellt, die von EventArgs abgeleitet wird, um die Daten für Ihr Event zu speichern. Anschließend können Sie das Ereignis wie folgt deklarieren:
public event EventHandler<MyEventArgs> MyEvent;
Public Event MyEvent As EventHandler(Of MyEventArgs)