Dieser Artikel wurde manuell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. |
Übersetzung
Original
|
List<T>-Klasse
Stellt eine stark typisierte Liste von Objekten dar, auf die über einen Index zugegriffen werden kann. Stellt Methoden zum Durchsuchen, Sortieren und Bearbeiten von Listen bereit.
Assembly: mscorlib (in mscorlib.dll)
Der List<T>-Typ macht die folgenden Member verfügbar.
| Name | Beschreibung | |
|---|---|---|
|
List<T>() | Initialisiert eine neue, leere Instanz der List<T>-Klasse, die über die anfängliche Standardkapazität verfügt. |
|
List<T>(IEnumerable<T>) | Initialisiert eine neue Instanz der List<T>-Klasse, die aus der angegebenen Auflistung kopierte Elemente enthält und eine ausreichende Kapazität für die Anzahl der kopierten Elemente aufweist. |
|
List<T>(Int32) | Initialisiert eine neue, leere Instanz der List<T>-Klasse, die die angegebene Anfangskapazität aufweist. |
| Name | Beschreibung | |
|---|---|---|
|
Capacity | Ruft die Gesamtzahl der Elemente ab, die die interne Datenstruktur ohne Änderung der Größe aufnehmen kann, oder legt diese Anzahl fest. |
|
Count | Ruft die Anzahl der Elemente ab, die tatsächlich in der List<T> enthalten sind. |
|
Item | Ruft das Element am angegebenen Index ab oder legt dieses fest. |
| Name | Beschreibung | |
|---|---|---|
|
Add | Fügt am Ende der List<T> ein Objekt hinzu. |
|
AddRange | Fügt die Elemente der angegebenen Auflistung am Ende von List<T> hinzu. |
|
AsReadOnly | Gibt einen schreibgeschützten IList<T>-Wrapper für die aktuelle Auflistung zurück. |
|
BinarySearch(T) | Durchsucht mithilfe des Standardcomparers die gesamte sortierte List<T> nach einem Element und gibt den nullbasierten Index des Elements zurück. |
|
BinarySearch(T, IComparer<T>) | Durchsucht mithilfe des angegebenen Comparers die gesamte sortierte List<T> nach einem Element und gibt den nullbasierten Index des Elements zurück. |
|
BinarySearch(Int32, Int32, T, IComparer<T>) | Durchsucht mithilfe des angegebenen Vergleichs einen Bereich von Elementen in der sortierten List<T> nach einem Element und gibt den nullbasierten Index des Elements zurück. |
|
Clear | Entfernt alle Elemente aus der List<T>. |
|
Contains | Bestimmt, ob sich ein Element in List<T> befindet. |
|
ConvertAll<TOutput> | Konvertiert die Elemente in der aktuellen List<T> in einen anderen Typ und gibt eine Liste der konvertierten Elemente zurück. |
|
CopyTo(T[]) | Kopiert die gesamte List<T> in ein kompatibles eindimensionales Array, wobei am Anfang des Zielarrays begonnen wird. |
|
CopyTo(T[], Int32) | Kopiert die gesamte List<T> in ein kompatibles eindimensionales Array, beginnend am angegebenen Index des Zielarrays. |
|
CopyTo(Int32, T[], Int32, Int32) | Kopiert einen Bereich von Elementen aus List<T> in ein kompatibles eindimensionales Array, beginnend ab dem angegebenen Index im Zielarray. |
|
Equals(Object) | Bestimmt, ob das angegebene Object und das aktuelle Object gleich sind. (Von Object geerbt.) |
|
Exists | Bestimmt, ob die List<T> Elemente enthält, die mit den vom angegebenen Prädikat definierten Bedingungen übereinstimmen. |
|
Finalize | Gibt einem Objekt Gelegenheit zu dem Versuch, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der automatische Speicherbereinigung freigegeben wird. (Von Object geerbt.) |
|
Find | Sucht nach einem Element, das die durch das angegebene Prädikat definierten Bedingungen erfüllt, und gibt das erste Vorkommen im gesamten List<T> zurück. |
|
FindAll | Ruft alle Elemente ab, die die vom angegebenen Prädikat definierten Bedingungen erfüllen. |
|
FindIndex(Predicate<T>) | Sucht nach einem Element, das die durch das angegebene Prädikat definierten Bedingungen erfüllt, und gibt den nullbasierten Index des ersten Vorkommens im gesamten List<T> zurück. |
|
FindIndex(Int32, Predicate<T>) | Sucht nach einem Element, das die durch das angegebene Prädikat definierten Bedingungen erfüllt, und gibt den nullbasierten Index des ersten Vorkommens innerhalb des Bereichs von Elementen im List<T> zurück, der vom angegebenen Index bis zum letzten Element reicht. |
|
FindIndex(Int32, Int32, Predicate<T>) | Sucht nach einem Element, das die durch das angegebene Prädikat definierten Bedingungen erfüllt, und gibt den nullbasierten Index des ersten Vorkommens innerhalb des Bereichs von Elementen in der List<T> zurück, die am angegebenen Index beginnt und die angegebene Anzahl von Elementen umfasst. |
|
FindLast | Sucht nach einem Element, das die durch das angegebene Prädikat definierten Bedingungen erfüllt, und gibt das letzte Vorkommen in der gesamten List<T> zurück. |
|
FindLastIndex(Predicate<T>) | Sucht nach einem Element, das die durch das angegebene Prädikat definierten Bedingungen erfüllt, und gibt den nullbasierten Index des letzten Vorkommens im gesamten List<T> zurück. |
|
FindLastIndex(Int32, Predicate<T>) | Sucht nach einem Element, das die durch das angegebene Prädikat definierten Bedingungen erfüllt, und gibt den nullbasierten Index des letzten Vorkommens innerhalb des Bereichs von Elementen im List<T> zurück, der vom ersten Element bis zum angegeben Index reicht. |
|
FindLastIndex(Int32, Int32, Predicate<T>) | Sucht nach einem Element, das die durch das angegebene Prädikat definierten Bedingungen erfüllt, und gibt den nullbasierten Index des ersten Vorkommens innerhalb des Bereichs von Elementen in der List<T> zurück, die die angegebene Anzahl von Elementen umfasst und am angegebenen Index endet. |
|
ForEach | Führt die angegebene Aktion für jedes Element der List<T> aus. |
|
GetEnumerator | Gibt einen Enumerator zurück, der die List<T> durchläuft. |
|
GetHashCode | Fungiert als Hashfunktion für einen bestimmten Typ. (Von Object geerbt.) |
|
GetRange | Erstellt eine flache Kopie eines Bereichs von Elementen in der Quell-List<T>. |
|
GetType | Ruft den Type der aktuellen Instanz ab. (Von Object geerbt.) |
|
IndexOf(T) | Sucht nach dem angegebenen Objekt und gibt den nullbasierten Index des ersten Vorkommens innerhalb der gesamten List<T> zurück. |
|
IndexOf(T, Int32) | Sucht nach dem angegebenen Objekt und gibt den nullbasierten Index des ersten Vorkommens innerhalb des Bereichs von Elementen in der List<T> zurück, der sich vom angegebenen Index bis zum letzten Element erstreckt. |
|
IndexOf(T, Int32, Int32) | Sucht nach dem angegebenen Objekt und gibt den nullbasierten Index des ersten Vorkommens innerhalb des Bereichs von Elementen in der List<T> zurück, der am angegebenen Index beginnt und die angegebene Anzahl von Elementen enthält. |
|
Insert | Fügt am angegebenen Index ein Element in die List<T> ein. |
|
InsertRange | Fügt die Elemente einer Auflistung am angegebenen Index in die List<T> ein. |
|
LastIndexOf(T) | Sucht nach dem angegebenen Objekt und gibt den nullbasierten Index des letzten Vorkommens innerhalb der gesamten List<T> zurück. |
|
LastIndexOf(T, Int32) | Sucht nach dem angegebenen Objekt und gibt den nullbasierten Index des letzten Vorkommens innerhalb des Bereichs von Elementen in derList<T> zurück, der sich vom ersten Element zum angegebenen Index erstreckt. |
|
LastIndexOf(T, Int32, Int32) | Sucht nach dem angegebenen Objekt und gibt den nullbasierten Index des letzten Vorkommens innerhalb des Bereichs von Elementen in List<T> zurück, der die angegebene Anzahl von Elementen enthält und am angegebenen Index endet. |
|
MemberwiseClone | Erstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.) |
|
Remove | Entfernt das erste Vorkommen eines bestimmten Objekts aus der List<T>. |
|
RemoveAll | Entfernt alle Elemente, die die vom angegebenen Prädikat definierten Bedingungen erfüllen. |
|
RemoveAt | Entfernt das Element am angegebenen Index aus der List<T>. |
|
RemoveRange | Entfernt einen Bereich von Elementen aus der List<T>. |
|
Reverse() | Kehrt die Reihenfolge der Elemente im gesamten List<T> um. |
|
Reverse(Int32, Int32) | Kehrt die Reihenfolge der Elemente im angegebenen Bereich um. |
|
Sort() | Sortiert die Elemente in der gesamten List<T> mithilfe des Standardvergleichs. |
|
Sort(Comparison<T>) | Sortiert die Elemente in der gesamten List<T> mithilfe des angegebenen System.Comparison<T>. |
|
Sort(IComparer<T>) | Sortiert die Elemente in der gesamten List<T> mithilfe des angegebenen Comparers. |
|
Sort(Int32, Int32, IComparer<T>) | Sortiert die Elemente in einem Bereich von Elementen in der List<T> mithilfe des angegebenen Vergleichs. |
|
ToArray | Kopiert die Elemente der List<T> in ein neues Array. |
|
ToString | Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.) |
|
TrimExcess | Legt die Kapazität auf die Anzahl der tatsächlich in der List<T> befindlichen Elemente fest, sofern diese Anzahl unter dem Schwellenwert liegt. |
|
TrueForAll | Bestimmt, ob jedes Element in der List<T> die vom angegebenen Prädikat definierten Bedingungen erfüllt. |
| Name | Beschreibung | |
|---|---|---|
|
Aggregate<T>(Func<T, T, T>) | Überladen. Wendet eine Akkumulatorfunktion auf eine Sequenz an. (Durch Enumerable definiert.) |
|
Aggregate<T, TAccumulate>(TAccumulate, Func<TAccumulate, T, TAccumulate>) | Überladen. Wendet eine Akkumulatorfunktion auf eine Sequenz an. Der angegebene Startwert wird als erster Akkumulatorwert verwendet. (Durch Enumerable definiert.) |
|
Aggregate<T, TAccumulate, TResult>(TAccumulate, Func<TAccumulate, T, TAccumulate>, Func<TAccumulate, TResult>) | Überladen. Wendet eine Akkumulatorfunktion auf eine Sequenz an. Der angegebene Startwert wird als erster Akkumulatorwert verwendet, und der Ergebniswert wird mit der angegebenen Funktion ausgewählt. (Durch Enumerable definiert.) |
|
All<T> | Bestimmt, ob alle Elemente einer Sequenz eine Bedingung erfüllen. (Durch Enumerable definiert.) |
|
Any<T>() | Überladen. Bestimmt, ob eine Sequenz Elemente enthält. (Durch Enumerable definiert.) |
|
Any<T>(Func<T, Boolean>) | Überladen. Bestimmt, ob ein Element einer Sequenz eine Bedingung erfüllt. (Durch Enumerable definiert.) |
|
AsEnumerable<T> | Gibt die Eingabe als IEnumerable<T> zurück. (Durch Enumerable definiert.) |
|
AsParallel() | Überladen. Ermöglicht die Parallelisierung einer Abfrage. (Durch ParallelEnumerable definiert.) |
|
AsParallel<T>() | Überladen. Ermöglicht die Parallelisierung einer Abfrage. (Durch ParallelEnumerable definiert.) |
|
AsQueryable() | Überladen. Konvertiert einen IEnumerable in einen IQueryable. (Durch Queryable definiert.) |
|
AsQueryable<T>() | Überladen. Konvertiert ein generisches IEnumerable<T> in ein generisches IQueryable<T>. (Durch Queryable definiert.) |
|
Average<T>(Func<T, Decimal>) | Überladen. Berechnet den Durchschnitt einer Sequenz von Decimal-Werten, die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Average<T>(Func<T, Nullable<Decimal>>) | Überladen. Berechnet den Durchschnitt einer Sequenz von Decimal-Werten, die NULL zulassen und die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Average<T>(Func<T, Double>) | Überladen. Berechnet den Durchschnitt einer Sequenz von Double-Werten, die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Average<T>(Func<T, Nullable<Double>>) | Überladen. Berechnet den Durchschnitt einer Sequenz von Double-Werten, die NULL zulassen und die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Average<T>(Func<T, Int32>) | Überladen. Berechnet den Durchschnitt einer Sequenz von Int32-Werten, die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Average<T>(Func<T, Nullable<Int32>>) | Überladen. Berechnet den Durchschnitt einer Sequenz von Int32-Werten, die NULL zulassen, die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt wird. (Durch Enumerable definiert.) |
|
Average<T>(Func<T, Int64>) | Überladen. Berechnet den Durchschnitt einer Sequenz von Int64-Werten, die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Average<T>(Func<T, Nullable<Int64>>) | Überladen. Berechnet den Durchschnitt einer Sequenz von Int64-Werten, die NULL zulassen und die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Average<T>(Func<T, Single>) | Überladen. Berechnet den Durchschnitt einer Sequenz von Single-Werten, die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Average<T>(Func<T, Nullable<Single>>) | Überladen. Berechnet den Durchschnitt einer Sequenz von Single-Werten, die NULL zulassen und die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Cast<TResult> | Konvertiert die Elemente eines IEnumerable in den angegebenen Typ. (Durch Enumerable definiert.) |
|
Concat<T> | Verkettet zwei Sequenzen. (Durch Enumerable definiert.) |
|
Contains<T>(T) | Überladen. Bestimmt mithilfe des Standardgleichheitsvergleichs, ob eine Sequenz ein angegebenes Element enthält. (Durch Enumerable definiert.) |
|
Contains<T>(T, IEqualityComparer<T>) | Überladen. Bestimmt mithilfe eines angegebenen IEqualityComparer<T>, ob eine Sequenz ein angegebenes Element enthält. (Durch Enumerable definiert.) |
|
Count<T>() | Überladen. Gibt die Anzahl der Elemente in einer Sequenz zurück. (Durch Enumerable definiert.) |
|
Count<T>(Func<T, Boolean>) | Überladen. Gibt eine Zahl zurück, die die Anzahl der Elemente in der angegebenen Sequenz angibt, die eine Bedingung erfüllen. (Durch Enumerable definiert.) |
|
DefaultIfEmpty<T>() | Überladen. Gibt die Elemente der angegebenen Sequenz oder den Standardwert des Typparameters in einer Singletonauflistung zurück, wenn die Sequenz leer ist. (Durch Enumerable definiert.) |
|
DefaultIfEmpty<T>(T) | Überladen. Gibt die Elemente der angegebenen Sequenz zurück, oder den angegebenen Wert in einer Singletonauflistung, wenn die Sequenz leer ist. (Durch Enumerable definiert.) |
|
Distinct<T>() | Überladen. Gibt mithilfe des Standardgleichheitsvergleichs zum Vergleichen von Werten unterschiedliche Elemente aus einer Sequenz zurück. (Durch Enumerable definiert.) |
|
Distinct<T>(IEqualityComparer<T>) | Überladen. Gibt mithilfe eines angegebenen IEqualityComparer<T> zum Vergleichen von Werten unterschiedliche Elemente aus einer Sequenz zurück. (Durch Enumerable definiert.) |
|
ElementAt<T> | Gibt das Element an einem angegebenen Index in einer Sequenz zurück. (Durch Enumerable definiert.) |
|
ElementAtOrDefault<T> | Gibt das Element an einem angegebenen Index in einer Sequenz oder einen Standardwert zurück, wenn der Index außerhalb des gültigen Bereichs liegt. (Durch Enumerable definiert.) |
|
Except<T>(IEnumerable<T>) | Überladen. Erzeugt die Differenzmenge zweier Sequenzen mithilfe des Standardgleichheitsvergleichs zum Vergleichen von Werten. (Durch Enumerable definiert.) |
|
Except<T>(IEnumerable<T>, IEqualityComparer<T>) | Überladen. Erzeugt mithilfe des angegebenen IEqualityComparer<T> zum Vergleichen von Werten die Differenzmenge zweier Sequenzen. (Durch Enumerable definiert.) |
|
First<T>() | Überladen. Gibt das erste Element einer Sequenz zurück. (Durch Enumerable definiert.) |
|
First<T>(Func<T, Boolean>) | Überladen. Gibt das erste Element in einer Sequenz zurück, das eine angegebene Bedingung erfüllt. (Durch Enumerable definiert.) |
|
FirstOrDefault<T>() | Überladen. Gibt das erste Element einer Sequenz zurück, oder einen Standardwert, wenn die Sequenz keine Elemente enthält. (Durch Enumerable definiert.) |
|
FirstOrDefault<T>(Func<T, Boolean>) | Überladen. Gibt das erste Element der Sequenz zurück, das eine Bedingung erfüllt, oder einen Standardwert, wenn ein solches Element nicht gefunden wird. (Durch Enumerable definiert.) |
|
GroupBy<T, TKey>(Func<T, TKey>) | Überladen. Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselauswahlfunktion. (Durch Enumerable definiert.) |
|
GroupBy<T, TKey>(Func<T, TKey>, IEqualityComparer<TKey>) | Überladen. Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselauswahlfunktion und vergleicht die Schlüssel mithilfe eines angegebenen Vergleichs. (Durch Enumerable definiert.) |
|
GroupBy<T, TKey, TElement>(Func<T, TKey>, Func<T, TElement>) | Überladen. Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselauswahlfunktion und projiziert die Elemente für jede Gruppe mithilfe einer angegebenen Funktion. (Durch Enumerable definiert.) |
|
GroupBy<T, TKey, TResult>(Func<T, TKey>, Func<TKey, IEnumerable<T>, TResult>) | Überladen. Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselauswahlfunktion und erstellt aus jeder Gruppe und ihrem Schlüssel einen Ergebniswert. (Durch Enumerable definiert.) |
|
GroupBy<T, TKey, TElement>(Func<T, TKey>, Func<T, TElement>, IEqualityComparer<TKey>) | Überladen. Gruppiert die Elemente einer Sequenz entsprechend einer Schlüsselauswahlfunktion. Die Schlüssel werden mithilfe eines Vergleichs verglichen, und die Elemente jeder Gruppe werden mithilfe einer angegebenen Funktion projiziert. (Durch Enumerable definiert.) |
|
GroupBy<T, TKey, TResult>(Func<T, TKey>, Func<TKey, IEnumerable<T>, TResult>, IEqualityComparer<TKey>) | Überladen. Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselauswahlfunktion und erstellt aus jeder Gruppe und ihrem Schlüssel einen Ergebniswert. Die Schlüssel werden mithilfe eines angegebenen Vergleichs verglichen. (Durch Enumerable definiert.) |
|
GroupBy<T, TKey, TElement, TResult>(Func<T, TKey>, Func<T, TElement>, Func<TKey, IEnumerable<TElement>, TResult>) | Überladen. Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselauswahlfunktion und erstellt aus jeder Gruppe und ihrem Schlüssel einen Ergebniswert. Die Elemente jeder Gruppe werden mithilfe einer angegebenen Funktion projiziert. (Durch Enumerable definiert.) |
|
GroupBy<T, TKey, TElement, TResult>(Func<T, TKey>, Func<T, TElement>, Func<TKey, IEnumerable<TElement>, TResult>, IEqualityComparer<TKey>) | Überladen. Gruppiert die Elemente einer Sequenz entsprechend einer angegebenen Schlüsselauswahlfunktion und erstellt aus jeder Gruppe und ihrem Schlüssel einen Ergebniswert. Schlüsselwerte werden mithilfe eines angegebenen Vergleichs verglichen, und die Elemente jeder Gruppe werden mithilfe einer angegebenen Funktion projiziert. (Durch Enumerable definiert.) |
|
GroupJoin<T, TInner, TKey, TResult>(IEnumerable<TInner>, Func<T, TKey>, Func<TInner, TKey>, Func<T, IEnumerable<TInner>, TResult>) | Überladen. Korreliert die Elemente von zwei Sequenzen anhand der Gleichheit der Schlüssel und gruppiert die Ergebnisse. Schlüssel werden mithilfe des Standardgleichheitsvergleichs verglichen. (Durch Enumerable definiert.) |
|
GroupJoin<T, TInner, TKey, TResult>(IEnumerable<TInner>, Func<T, TKey>, Func<TInner, TKey>, Func<T, IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>) | Überladen. Korreliert die Elemente von zwei Sequenzen anhand der Gleichheit der Schlüssel und gruppiert die Ergebnisse. Schlüssel werden mithilfe eines angegebenen IEqualityComparer<T> verglichen. (Durch Enumerable definiert.) |
|
Intersect<T>(IEnumerable<T>) | Überladen. Erzeugt die Schnittmenge zweier Sequenzen mithilfe des Standardgleichheitsvergleichs zum Vergleichen von Werten. (Durch Enumerable definiert.) |
|
Intersect<T>(IEnumerable<T>, IEqualityComparer<T>) | Überladen. Erzeugt mithilfe des angegebenen IEqualityComparer<T> zum Vergleichen von Werten die Schnittmenge von zwei Sequenzen. (Durch Enumerable definiert.) |
|
Join<T, TInner, TKey, TResult>(IEnumerable<TInner>, Func<T, TKey>, Func<TInner, TKey>, Func<T, TInner, TResult>) | Überladen. Korreliert die Elemente von zwei Sequenzen auf der Grundlage von übereinstimmenden Schlüsseln. Schlüssel werden mithilfe des Standardgleichheitsvergleichs verglichen. (Durch Enumerable definiert.) |
|
Join<T, TInner, TKey, TResult>(IEnumerable<TInner>, Func<T, TKey>, Func<TInner, TKey>, Func<T, TInner, TResult>, IEqualityComparer<TKey>) | Überladen. Korreliert die Elemente von zwei Sequenzen auf der Grundlage von übereinstimmenden Schlüsseln. Schlüssel werden mithilfe eines angegebenen IEqualityComparer<T> verglichen. (Durch Enumerable definiert.) |
|
Last<T>() | Überladen. Gibt das letzte Element einer Sequenz zurück. (Durch Enumerable definiert.) |
|
Last<T>(Func<T, Boolean>) | Überladen. Gibt das letzte Element einer Sequenz zurück, das eine angegebene Bedingung erfüllt. (Durch Enumerable definiert.) |
|
LastOrDefault<T>() | Überladen. Gibt das letzte Element einer Sequenz zurück, oder einen Standardwert, wenn die Sequenz keine Elemente enthält. (Durch Enumerable definiert.) |
|
LastOrDefault<T>(Func<T, Boolean>) | Überladen. Gibt das letzte Element einer Sequenz zurück, das eine Bedingung erfüllt, oder einen Standardwert, wenn ein solches Element nicht gefunden wird. (Durch Enumerable definiert.) |
|
LongCount<T>() | Überladen. Gibt ein Int64 zurück, das die Gesamtanzahl der Elemente in einer Sequenz darstellt. (Durch Enumerable definiert.) |
|
LongCount<T>(Func<T, Boolean>) | Überladen. Gibt ein Int64 zurück, das die Anzahl der Elemente in einer Sequenz darstellt, die eine Bedingung erfüllen. (Durch Enumerable definiert.) |
|
Max<T>() | Überladen. Gibt den Höchstwert in einer generischen Sequenz zurück. (Durch Enumerable definiert.) |
|
Max<T>(Func<T, Decimal>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den maximalen Decimal-Wert zurück. (Durch Enumerable definiert.) |
|
Max<T>(Func<T, Nullable<Decimal>>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den maximalen Decimal-Wert zurück, der NULL-Werte zulässt. (Durch Enumerable definiert.) |
|
Max<T>(Func<T, Double>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den maximalen Double-Wert zurück. (Durch Enumerable definiert.) |
|
Max<T>(Func<T, Nullable<Double>>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den maximalen Double-Wert zurück, der NULL-Werte zulässt. (Durch Enumerable definiert.) |
|
Max<T>(Func<T, Int32>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den maximalen Int32-Wert zurück. (Durch Enumerable definiert.) |
|
Max<T>(Func<T, Nullable<Int32>>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den maximalen Int32-Wert zurück, der NULL-Werte zulässt. (Durch Enumerable definiert.) |
|
Max<T>(Func<T, Int64>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den maximalen Int64-Wert zurück. (Durch Enumerable definiert.) |
|
Max<T>(Func<T, Nullable<Int64>>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den maximalen Int64-Wert zurück, der NULL-Werte zulässt. (Durch Enumerable definiert.) |
|
Max<T>(Func<T, Single>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den maximalen Single-Wert zurück. (Durch Enumerable definiert.) |
|
Max<T>(Func<T, Nullable<Single>>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den maximalen Single-Wert zurück, der NULL-Werte zulässt. (Durch Enumerable definiert.) |
|
Max<T, TResult>(Func<T, TResult>) | Überladen. Ruft für jedes Element einer generischen Sequenz eine Transformationsfunktion auf und gibt den höchsten Ergebniswert zurück. (Durch Enumerable definiert.) |
|
Min<T>() | Überladen. Gibt den Mindestwert in einer generischen Sequenz zurück. (Durch Enumerable definiert.) |
|
Min<T>(Func<T, Decimal>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den minimalen Decimal-Wert zurück. (Durch Enumerable definiert.) |
|
Min<T>(Func<T, Nullable<Decimal>>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den minimalen Decimal-Wert zurück, der NULL-Werte zulässt. (Durch Enumerable definiert.) |
|
Min<T>(Func<T, Double>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den minimalen Double-Wert zurück. (Durch Enumerable definiert.) |
|
Min<T>(Func<T, Nullable<Double>>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den minimalen Double-Wert zurück, der NULL-Werte zulässt. (Durch Enumerable definiert.) |
|
Min<T>(Func<T, Int32>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den minimalen Int32-Wert zurück. (Durch Enumerable definiert.) |
|
Min<T>(Func<T, Nullable<Int32>>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den minimalen Int32-Wert zurück, der NULL-Werte zulässt. (Durch Enumerable definiert.) |
|
Min<T>(Func<T, Int64>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den minimalen Int64-Wert zurück. (Durch Enumerable definiert.) |
|
Min<T>(Func<T, Nullable<Int64>>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den minimalen Int64-Wert zurück, der NULL-Werte zulässt. (Durch Enumerable definiert.) |
|
Min<T>(Func<T, Single>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den minimalen Single-Wert zurück. (Durch Enumerable definiert.) |
|
Min<T>(Func<T, Nullable<Single>>) | Überladen. Ruft für jedes Element einer Sequenz eine Transformationsfunktion auf und gibt den minimalen Single-Wert zurück, der NULL-Werte zulässt. (Durch Enumerable definiert.) |
|
Min<T, TResult>(Func<T, TResult>) | Überladen. Ruft für jedes Element einer generischen Sequenz eine Transformationsfunktion auf und gibt den niedrigsten Ergebniswert zurück. (Durch Enumerable definiert.) |
|
OfType<TResult> | Filtert die Elemente eines IEnumerable anhand eines angegebenen Typs. (Durch Enumerable definiert.) |
|
OrderBy<T, TKey>(Func<T, TKey>) | Überladen. Sortiert die Elemente einer Sequenz in aufsteigender Reihenfolge nach einem Schlüssel. (Durch Enumerable definiert.) |
|
OrderBy<T, TKey>(Func<T, TKey>, IComparer<TKey>) | Überladen. Sortiert die Elemente einer Sequenz mithilfe eines angegebenen Vergleichs in aufsteigender Reihenfolge. (Durch Enumerable definiert.) |
|
OrderByDescending<T, TKey>(Func<T, TKey>) | Überladen. Sortiert die Elemente einer Sequenz in absteigender Reihenfolge nach einem Schlüssel. (Durch Enumerable definiert.) |
|
OrderByDescending<T, TKey>(Func<T, TKey>, IComparer<TKey>) | Überladen. Sortiert die Elemente einer Sequenz mithilfe eines angegebenen Vergleichs in absteigender Reihenfolge. (Durch Enumerable definiert.) |
|
Reverse<T> | Kehrt die Reihenfolge der Elemente in einer Sequenz um. (Durch Enumerable definiert.) |
|
Select<T, TResult>(Func<T, TResult>) | Überladen. Projiziert jedes Element einer Sequenz in ein neues Format. (Durch Enumerable definiert.) |
|
Select<T, TResult>(Func<T, Int32, TResult>) | Überladen. Projiziert jedes Element einer Sequenz in ein neues Format, indem der Index des Elements integriert wird. (Durch Enumerable definiert.) |
|
SelectMany<T, TResult>(Func<T, IEnumerable<TResult>>) | Überladen. Projiziert jedes Element einer Sequenz in ein IEnumerable<T> und fasst die resultierenden Sequenzen in einer einzigen Sequenz zusammen. (Durch Enumerable definiert.) |
|
SelectMany<T, TResult>(Func<T, Int32, IEnumerable<TResult>>) | Überladen. Projiziert jedes Element einer Sequenz in ein IEnumerable<T> und fasst die resultierenden Sequenzen zu einer einzigen Sequenz zusammen. Der Index jedes Quellelements wird im projizierten Format des jeweiligen Elements verwendet. (Durch Enumerable definiert.) |
|
SelectMany<T, TCollection, TResult>(Func<T, Int32, IEnumerable<TCollection>>, Func<T, TCollection, TResult>) | Überladen. Projiziert jedes Element einer Sequenz in ein IEnumerable<T>, fasst die resultierenden Sequenzen zu einer einzigen Sequenz zusammen und ruft für jedes Element in dieser Sequenz eine Ergebnisauswahlfunktion auf. Der Index jedes Quellelements wird im projizierten Zwischenformat des jeweiligen Elements verwendet. (Durch Enumerable definiert.) |
|
SelectMany<T, TCollection, TResult>(Func<T, IEnumerable<TCollection>>, Func<T, TCollection, TResult>) | Überladen. Projiziert jedes Element einer Sequenz in ein IEnumerable<T>, fasst die resultierenden Sequenzen zu einer einzigen Sequenz zusammen und ruft für jedes Element in dieser Sequenz eine Ergebnisauswahlfunktion auf. (Durch Enumerable definiert.) |
|
SequenceEqual<T>(IEnumerable<T>) | Überladen. Bestimmt, ob zwei Sequenzen gleich sind, indem die Elemente mithilfe des Standardgleichheitsvergleichs für ihren Typ verglichen werden. (Durch Enumerable definiert.) |
|
SequenceEqual<T>(IEnumerable<T>, IEqualityComparer<T>) | Überladen. Bestimmt, ob zwei Sequenzen gleich sind, indem ihre Elemente mithilfe eines angegebenen IEqualityComparer<T> verglichen werden. (Durch Enumerable definiert.) |
|
Single<T>() | Überladen. Gibt das einzige Element einer Sequenz zurück und löst eine Ausnahme aus, wenn nicht genau ein Element in der Sequenz vorhanden ist. (Durch Enumerable definiert.) |
|
Single<T>(Func<T, Boolean>) | Überladen. Gibt das einzige Element einer Sequenz zurück, das eine angegebene Bedingung erfüllt, und löst eine Ausnahme aus, wenn mehrere solche Elemente vorhanden sind. (Durch Enumerable definiert.) |
|
SingleOrDefault<T>() | Überladen. Gibt das einzige Element einer Sequenz zurück oder einen Standardwert, wenn die Sequenz leer ist. Diese Methode löst eine Ausnahme aus, wenn mehrere Elemente in der Sequenz vorhanden sind. (Durch Enumerable definiert.) |
|
SingleOrDefault<T>(Func<T, Boolean>) | Überladen. Gibt das einzige Element einer Sequenz zurück, das eine angegebene Bedingung erfüllt, oder einen Standardwert, wenn kein solches Element vorhanden ist. Diese Methode löst eine Ausnahme aus, wenn mehrere Elemente die Bedingung erfüllen. (Durch Enumerable definiert.) |
|
Skip<T> | Umgeht eine festgelegte Anzahl von Elementen in einer Sequenz und gibt dann die übrigen Elemente zurück. (Durch Enumerable definiert.) |
|
SkipWhile<T>(Func<T, Boolean>) | Überladen. Umgeht Elemente in einer Sequenz, solange eine angegebene Bedingung true ist, und gibt dann die übrigen Elemente zurück. (Durch Enumerable definiert.) |
|
SkipWhile<T>(Func<T, Int32, Boolean>) | Überladen. Umgeht Elemente in einer Sequenz, solange eine angegebene Bedingung true ist, und gibt dann die übrigen Elemente zurück. In der Logik der Prädikatfunktion wird der Index des Elements verwendet. (Durch Enumerable definiert.) |
|
Sum<T>(Func<T, Decimal>) | Überladen. Berechnet die Summe einer Sequenz von Decimal-Werten, die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Sum<T>(Func<T, Nullable<Decimal>>) | Überladen. Berechnet die Summe einer Sequenz von Decimal-Werten, die NULL zulassen und die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Sum<T>(Func<T, Double>) | Überladen. Berechnet die Summe einer Sequenz von Double-Werten, die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Sum<T>(Func<T, Nullable<Double>>) | Überladen. Berechnet die Summe einer Sequenz von Double-Werten, die NULL zulassen und die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Sum<T>(Func<T, Int32>) | Überladen. Berechnet die Summe einer Sequenz von Int32-Werten, die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Sum<T>(Func<T, Nullable<Int32>>) | Überladen. Berechnet die Summe einer Sequenz von Int32-Werten, die NULL zulassen und die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Sum<T>(Func<T, Int64>) | Überladen. Berechnet die Summe einer Sequenz von Int64-Werten, die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Sum<T>(Func<T, Nullable<Int64>>) | Überladen. Berechnet die Summe einer Sequenz von Int64-Werten, die NULL zulassen und die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Sum<T>(Func<T, Single>) | Überladen. Berechnet die Summe einer Sequenz von Single-Werten, die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Sum<T>(Func<T, Nullable<Single>>) | Überladen. Berechnet die Summe einer Sequenz von Single-Werten, die NULL zulassen und die durch den Aufruf einer Transformationsfunktion für jedes Element der Eingabesequenz ermittelt werden. (Durch Enumerable definiert.) |
|
Take<T> | Gibt eine angegebene Anzahl von zusammenhängenden Elementen ab dem Anfang einer Sequenz zurück. (Durch Enumerable definiert.) |
|
TakeWhile<T>(Func<T, Boolean>) | Überladen. Gibt Elemente aus einer Sequenz zurück, solange eine angegebene Bedingung true ist. (Durch Enumerable definiert.) |
|
TakeWhile<T>(Func<T, Int32, Boolean>) | Überladen. Gibt Elemente aus einer Sequenz zurück, solange eine angegebene Bedingung true ist. In der Logik der Prädikatfunktion wird der Index des Elements verwendet. (Durch Enumerable definiert.) |
|
ToArray<T> | Erstellt ein Array aus einem IEnumerable<T>. (Durch Enumerable definiert.) |
|
ToDictionary<T, TKey>(Func<T, TKey>) | Überladen. Erstellt ein Dictionary<TKey, TValue> aus einem IEnumerable<T> gemäß einer angegebenen Schlüsselauswahlfunktion. (Durch Enumerable definiert.) |
|
ToDictionary<T, TKey>(Func<T, TKey>, IEqualityComparer<TKey>) | Überladen. Erstellt ein Dictionary<TKey, TValue> aus einem IEnumerable<T> gemäß einer angegebenen Schlüsselauswahlfunktion und eines angegebenen Schlüsselvergleichs. (Durch Enumerable definiert.) |
|
ToDictionary<T, TKey, TElement>(Func<T, TKey>, Func<T, TElement>) | Überladen. Erstellt ein Dictionary<TKey, TValue> aus einem IEnumerable<T> entsprechend der angegebenen Schlüsselauswahlfunktion und Elementauswahlfunktion. (Durch Enumerable definiert.) |
|
ToDictionary<T, TKey, TElement>(Func<T, TKey>, Func<T, TElement>, IEqualityComparer<TKey>) | Überladen. Erstellt ein Dictionary<TKey, TValue> aus einem IEnumerable<T> entsprechend einer angegebenen Schlüsselauswahlfunktion, einem Vergleich und einer Elementauswahlfunktion. (Durch Enumerable definiert.) |
|
ToList<T> | Erstellt eine List<T> aus einem IEnumerable<T>. (Durch Enumerable definiert.) |
|
ToLookup<T, TKey>(Func<T, TKey>) | Überladen. Erstellt ein Lookup<TKey, TElement> aus einem IEnumerable<T> gemäß einer angegebenen Schlüsselauswahlfunktion. (Durch Enumerable definiert.) |
|
ToLookup<T, TKey>(Func<T, TKey>, IEqualityComparer<TKey>) | Überladen. Erstellt ein Lookup<TKey, TElement> aus einem IEnumerable<T> gemäß einer angegebenen Schlüsselauswahlfunktion und eines angegebenen Schlüsselvergleichs. (Durch Enumerable definiert.) |
|
ToLookup<T, TKey, TElement>(Func<T, TKey>, Func<T, TElement>) | Überladen. Erstellt ein Lookup<TKey, TElement> aus einem IEnumerable<T> entsprechend der angegebenen Schlüsselauswahlfunktion und Elementauswahlfunktion. (Durch Enumerable definiert.) |
|
ToLookup<T, TKey, TElement>(Func<T, TKey>, Func<T, TElement>, IEqualityComparer<TKey>) | Überladen. Erstellt ein Lookup<TKey, TElement> aus einem IEnumerable<T> entsprechend einer angegebenen Schlüsselauswahlfunktion, einem Vergleich und einer Elementauswahlfunktion. (Durch Enumerable definiert.) |
|
Union<T>(IEnumerable<T>) | Überladen. Erzeugt die Vereinigungsmenge von zwei Sequenzen mithilfe des Standardgleichheitsvergleichs. (Durch Enumerable definiert.) |
|
Union<T>(IEnumerable<T>, IEqualityComparer<T>) | Überladen. Erzeugt mithilfe eines angegebenen IEqualityComparer<T> die Vereinigungsmenge von zwei Sequenzen. (Durch Enumerable definiert.) |
|
Where<T>(Func<T, Boolean>) | Überladen. Filtert eine Sequenz von Werten nach einem Prädikat. (Durch Enumerable definiert.) |
|
Where<T>(Func<T, Int32, Boolean>) | Überladen. Filtert eine Sequenz von Werten nach einem Prädikat. In der Logik der Prädikatfunktion wird der Index der einzelnen Elemente verwendet. (Durch Enumerable definiert.) |
|
Zip<T, TSecond, TResult> | Führt zwei Sequenzen mit der angegebenen Prädikatfunktion zusammen. (Durch Enumerable definiert.) |
| Name | Beschreibung | |
|---|---|---|
|
ICollection.CopyTo | Kopiert die Elemente der ICollection beginnend bei einem bestimmten Array-Index in ein Array. |
|
ICollection<T>.IsReadOnly | Ruft einen Wert ab, der angibt, ob die ICollection<T> schreibgeschützt ist. |
|
ICollection.IsSynchronized | Ruft einen Wert ab, der angibt, ob der Zugriff auf ICollection synchronisiert (threadsicher) ist. |
|
ICollection.SyncRoot | Ruft ein Objekt ab, mit dem der Zugriff auf die ICollection synchronisiert werden kann. |
|
IEnumerable<T>.GetEnumerator | Gibt einen Enumerator zurück, der eine Auflistung durchläuft. |
|
IEnumerable.GetEnumerator | Gibt einen Enumerator zurück, der eine Auflistung durchläuft. |
|
IList.Add | Fügt der IList ein Element hinzu. |
|
IList.Contains | Bestimmt, ob die IList einen bestimmten Wert enthält. |
|
IList.IndexOf | Bestimmt den Index eines bestimmten Elements in der IList. |
|
IList.Insert | Fügt am angegebenen Index ein Element in die IList ein. |
|
IList.IsFixedSize | Ruft einen Wert ab, der angibt, ob IList eine feste Größe hat. |
|
IList.IsReadOnly | Ruft einen Wert ab, der angibt, ob IList schreibgeschützt ist. |
|
IList.Item | Ruft das Element am angegebenen Index ab oder legt dieses fest. |
|
IList.Remove | Entfernt das erste Vorkommen eines bestimmten Objekts aus der IList. |
Die List<T>-Klasse stellt die generische Entsprechung der ArrayList-Klasse dar. Sie implementiert die generische IList<T>-Schnittstelle unter Verwendung eines Arrays, das nach Bedarf dynamisch vergrößert wird.
Die List<T>-Klasse verwendet sowohl einen Gleichheitsvergleich als auch einen Reihenfolgevergleich.
-
Beispielsweise verwenden die Methoden Contains, IndexOf, LastIndexOf und Remove einen Gleichheitsvergleich für die Listenelemente. Der Standardgleichheitsvergleich für Typ T wird wie folgt bestimmt. Wenn Typ T die generische IEquatable<T>-Schnittstelle implementiert, entspricht der Gleichheitsvergleich der Equals(T)-Methode dieser Schnittstelle. Andernfalls ist der Standardgleichheitsvergleich Object.Equals(Object).
-
Methoden wie BinarySearch und Sort verwenden für die Listenelemente einen Reihenfolgevergleich. Der Standardvergleich für Typ T wird wie folgt bestimmt. Wenn Typ T die generische IComparable<T>-Schnittstelle implementiert, entspricht der Standardvergleich der CompareTo(T)-Methode dieser Schnittstelle. Wenn andernfalls Typ T die nicht generische IComparable-Schnittstelle implementiert, entspricht der Standardvergleich der CompareTo(Object)-Methode dieser Schnittstelle. Wenn Typ T keine der Schnittstellen implementiert, ist kein Standardvergleich vorhanden, und ein Vergleich oder Vergleichsdelegat muss explizit angegeben werden.
Es wird nicht sichergestellt, dass die List<T> sortiert ist. Sie müssen List<T> sortieren, bevor Sie Operationen wie BinarySearch durchführen, die eine sortierte List<T> voraussetzen.
Auf Elemente in dieser Auflistung kann mithilfe eines ganzzahligen Index zugegriffen werden. Diese Auflistung verwendet nullbasierte Indizes.
List<T> akzeptiert null als gültigen Wert für Referenztypen und lässt doppelte Elemente zu.
Überlegungen zur Leistung
Beim Entscheiden über die Verwendung der List<T>-Klasse oder der ArrayList-Klasse, die beide über ähnliche Funktionen verfügen, müssen Sie bedenken, dass die List<T>-Klasse in den meisten Fällen eine bessere Leistung bietet und typsicher ist. Wenn für den Typ T der List<T>-Klasse ein Referenztyp verwendet wird, stimmt das Verhalten der beiden Klassen überein. Wenn für den Typ T hingegen ein Werttyp verwendet wird, müssen Sie Aspekte wie die Implementierung und Boxing berücksichtigen.
Wenn für den Typ T ein Werttyp verwendet wird, generiert der Compiler eine Implementierung der List<T>-Klasse speziell für diesen Werttyp. Das bedeutet, dass ein Listenelement eines List<T>-Objekts nicht geschachtelt werden muss, bevor das Element verwendet werden kann, und nachdem etwa 500 Listenelemente erstellt wurden, ist der Speicher mit Listenelementen ohne Boxing größer als der zum Generieren der Klassenimplementierung verwendete Speicher.
Stellen Sie sicher, dass der für Typ T verwendete Werttyp die generische IEquatable<T>-Schnittstelle implementiert. Andernfalls müssen Methoden wie Contains die Object.Equals(Object)-Methode aufrufen, die das betreffende Listenelement schachtelt. Wenn der Werttyp die IComparable-Schnittstelle implementiert und Sie den Quellcode besitzen, implementieren Sie zusätzlich die generische IComparable<T>-Schnittstelle, um zu verhindern, dass die BinarySearch-Methode und die Sort-Methode Listenelemente schachteln. Wenn Sie den Quellcode nicht besitzen, übergeben Sie ein IComparer<T>-Objekt an die BinarySearch-Methode und an die Sort-Methode.
Es ist für Sie von Vorteil, die typspezifische Implementierung der List<T>-Klasse zu verwenden, anstatt die ArrayList-Klasse zu verwenden oder selbst eine stark typisierte Wrapperauflistung zu schreiben. Der Grund dafür besteht darin, dass Ihre Implementierung die Schritte ausführen muss, die .NET Framework bereits für Sie ausführt, und dass die Common Language Runtime im Gegensatz zu Ihrer Implementierung den Code und der Microsoft Intermediate Language sowie Metadaten freigeben kann.
Im folgenden Codebeispiel werden verschiedene Eigenschaften und Methoden der generischen List<T>-Klasse vom Typ Zeichenfolge veranschaulicht. (Ein Beispiel eines List<T> komplexer Typen finden Sie unter den Ausführungen zur Contains-Methode.)
Der Standardkonstruktor wird verwendet, um eine Liste von Zeichenfolgen mit der Standardkapazität zu erstellen. Die Capacity-Eigenschaft wird angezeigt, und anschließend wird die Add-Methode verwendet, um mehrere Elemente hinzuzufügen. Die Elemente werden aufgelistet, und die Capacity-Eigenschaft wird erneut angezeigt – zusammen mit der Count-Eigenschaft, damit deutlich wird, dass die Kapazität nach Bedarf erhöht wurde.
Mit der Contains-Methode wird das Vorhandensein eines Elements in der Liste geprüft, mit der Insert-Methode wird ein neues Element in die Mitte der Liste eingefügt, und der Inhalt der Liste wird erneut angezeigt.
Die Item-Standardeigenschaft (der Indexer in C#) wird zum Abrufen eines Elements verwendet, mit der Remove-Methode wird die erste Instanz des zuvor hinzugefügten doppelten Elements entfernt, und der Inhalt wird erneut angezeigt. Die Remove-Methode entfernt stets die erste gefundene Instanz.
Mit der TrimExcess-Methode wird die Kapazität so verringert, dass sie der Anzahl entspricht, und die Capacity-Eigenschaft sowie die Count-Eigenschaft werden angezeigt. Wenn die nicht verwendete Kapazität weniger als 10 Prozent der Gesamtkapazität betragen hätte, wäre die Größe der Liste nicht geändert worden.
Abschließend werden mithilfe der Clear-Methode alle Elemente aus der Liste entfernt. Die Capacity-Eigenschaft und die Count-Eigenschaft werden angezeigt.
using System; using System.Collections.Generic; public class Example { public static void Main() { List<string> dinosaurs = new List<string>(); Console.WriteLine("\nCapacity: {0}", dinosaurs.Capacity); dinosaurs.Add("Tyrannosaurus"); dinosaurs.Add("Amargasaurus"); dinosaurs.Add("Mamenchisaurus"); dinosaurs.Add("Deinonychus"); dinosaurs.Add("Compsognathus"); Console.WriteLine(); foreach(string dinosaur in dinosaurs) { Console.WriteLine(dinosaur); } Console.WriteLine("\nCapacity: {0}", dinosaurs.Capacity); Console.WriteLine("Count: {0}", dinosaurs.Count); Console.WriteLine("\nContains(\"Deinonychus\"): {0}", dinosaurs.Contains("Deinonychus")); Console.WriteLine("\nInsert(2, \"Compsognathus\")"); dinosaurs.Insert(2, "Compsognathus"); Console.WriteLine(); foreach(string dinosaur in dinosaurs) { Console.WriteLine(dinosaur); } Console.WriteLine("\ndinosaurs[3]: {0}", dinosaurs[3]); Console.WriteLine("\nRemove(\"Compsognathus\")"); dinosaurs.Remove("Compsognathus"); Console.WriteLine(); foreach(string dinosaur in dinosaurs) { Console.WriteLine(dinosaur); } dinosaurs.TrimExcess(); Console.WriteLine("\nTrimExcess()"); Console.WriteLine("Capacity: {0}", dinosaurs.Capacity); Console.WriteLine("Count: {0}", dinosaurs.Count); dinosaurs.Clear(); Console.WriteLine("\nClear()"); Console.WriteLine("Capacity: {0}", dinosaurs.Capacity); Console.WriteLine("Count: {0}", dinosaurs.Count); } } /* This code example produces the following output: Capacity: 0 Tyrannosaurus Amargasaurus Mamenchisaurus Deinonychus Compsognathus Capacity: 8 Count: 5 Contains("Deinonychus"): True Insert(2, "Compsognathus") Tyrannosaurus Amargasaurus Compsognathus Mamenchisaurus Deinonychus Compsognathus dinosaurs[3]: Mamenchisaurus Remove("Compsognathus") Tyrannosaurus Amargasaurus Mamenchisaurus Deinonychus Compsognathus TrimExcess() Capacity: 5 Count: 5 Clear() Capacity: 5 Count: 0 */
Windows 7, Windows Vista SP1 oder höher, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core wird nicht unterstützt), Windows Server 2008 R2 (Server Core wird mit SP1 oder höher unterstützt), Windows Server 2003 SP2
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Öffentliche statische (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
List<T> stellt eine gleichzeitige Unterstützung für mehrere Reader bereit, sofern die Auflistung nicht verändert wird. Die Enumeration einer Auflistung ist systemintern keine threadsichere Prozedur. Für den seltenen Fall, dass Konflikte zwischen einer Enumeration und einem oder mehreren Schreibzugriffen auftreten, besteht die einzige Möglichkeit der Gewährleistung der Threadsicherheit im Sperren der Auflistung während der gesamten Enumeration. Um den Lese- und Schreibzugriff auf diese Auflistung durch mehrere Threads zuzulassen, müssen Sie eine eigene Synchronisierung implementieren.
System.Collections.Generic.List<T>
System.Data.Services.ExpandSegmentCollection
System.Workflow.Activities.OperationParameterInfoCollection
System.Workflow.Activities.WorkflowRoleCollection
System.Workflow.ComponentModel.ActivityCollection
System.Workflow.ComponentModel.Design.ActivityDesignerGlyphCollection
System.Workflow.Runtime.Tracking.ActivityTrackingLocationCollection
System.Workflow.Runtime.Tracking.ActivityTrackPointCollection
System.Workflow.Runtime.Tracking.ExtractCollection
System.Workflow.Runtime.Tracking.TrackingAnnotationCollection
System.Workflow.Runtime.Tracking.TrackingConditionCollection
System.Workflow.Runtime.Tracking.UserTrackingLocationCollection
System.Workflow.Runtime.Tracking.UserTrackPointCollection
System.Workflow.Runtime.Tracking.WorkflowTrackPointCollection