Auflistungen und Datenstrukturen
Aktualisiert: November 2007
Miteinander verwandte Daten können effektiver gehandhabt werden, wenn sie in Auflistungen gruppiert werden. Anstatt Code für jedes einzelne Objekt zu schreiben, kann derselbe Code verwendet werden, um alle Elemente einer Auflistung zu verarbeiten.
Zum Verwalten einer Auflistung können mit der Array-Klasse und der System.Collections-Klasse einzelne Elemente der Auflistung oder ein Bereich von Elementen hinzugefügt, entfernt oder geändert werden. Es kann auch eine gesamte Auflistung in eine andere Auflistung kopiert werden.
Einige Collections-Klassen haben Sortierungsfunktionen, die meisten sind indiziert. Die Speicherverwaltung erfolgt automatisch, und die Kapazität einer Auflistung wird je nach Anforderung erweitert. Die Synchronisierung bietet Threadsicherheit beim Zugriff auf die Member der Auflistung. Einige der Collections-Klassen können Wrapper generieren, die die Auflistung mit einem Schreibschutz oder einer festen Größe versehen. Alle Collections-Klassen können ihren eigenen Enumerator generieren, der das Durchlaufen der Elemente vereinfacht.
In .NET Framework Version 2.0 bieten generische Auflistungsklassen neue Funktionalität und vereinfachen das Erstellen von Auflistungen mit starker Typisierung. Siehe den System.Collections.Generic-Namespace und den System.Collections.ObjectModel-Namespace.
Mit dem LINQ to Objects-Feature können Sie LINQ-Abfragen für den Zugriff auf Objekte im Arbeitsspeicher verwenden, solange der Objekttyp IEnumerable oder IEnumerable<T> implementiert. LINQ-Abfragen bieten ein allgemeines Muster für den Datenzugriff, sind normalerweise präziser und besser lesbar als standardmäßige foreach-Schleifen und stellen Filter-, Sortier- und Gruppierungsfunktionen bereit. LINQ-Abfragen können auch die Leistung verbessern. Weitere Informationen finden Sie unter LINQ to Objects.
In diesem Abschnitt
Definieren von Auflistungen
Beschreibt Auflistungstypen und stellt einige Unterschiede zwischen generischen und nicht generischen Auflistungstypen in der .NET Framework-Klassenbibliothek heraus.Häufig verwendete Auflistungstypen
Beschreibt häufig verwendete generische und nicht generische Auflistungstypen, z. B. Array, List<T> und Dictionary<TKey, TValue>.Bitauflistungen
Beschreibt den BitArray-Auflistungstyp und den BitVector32-Auflistungstyp.Spezialisierte Auflistungen
Beschreibt Auflistungen für spezielle Zwecke, z. B. NameValueCollection, StringDictionary und StringCollection.Erstellen und Verändern von Auflistungen
Erörtert die Wahl des optimalen Auflistungstyps, das Enumerieren von Auflistungen, das Verwenden von Auflistungen mit mehreren Threads und das Sortieren von Auflistungen.Verwenden von generischen Auflistungen
Erörtert die Verwendung generischer Auflistungstypen.
Referenz
Array
Beschreibt die wichtigsten Features der Array-Klasse, die Methoden zum Erstellen, Bearbeiten, Durchsuchen und Sortieren von Arrays bereitstellt und damit die Basisklasse für alle Arrays in der Common Language Runtime bildet.System.Collections
Bietet eine Referenzdokumentation für den System.Collections-Namespace, der Schnittstellen und Klassen enthält, die verschiedene Objektauflistungen definieren.System.Collections.Generic
Bietet eine Referenzdokumentation für den System.Collections.Generic-Namespace, der Schnittstellen und Klassen enthält, die generische Auflistungen definieren.System.Collections.Specialized
Bietet eine Referenzdokumentation für den System.Collections.Specialized-Namespace, der spezialisierte und stark typisierte Auflistungen enthält.