List<T>.CopyTo Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Kopiert List<T> oder einen Teil davon in ein Array.
Überlädt
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 der List<T> in ein kompatibles eindimensionales Array, beginnend ab dem angegebenen Index im Zielarray. |
CopyTo(T[]) |
Kopiert die gesamte List<T> in ein kompatibles eindimensionales Array, wobei am Anfang des Zielarrays begonnen wird. |
Beispiele
Im folgenden Beispiel werden alle drei Überladungen der CopyTo Methode veranschaulicht. Eine List<T> Zeichenfolge wird erstellt und mit 5 Zeichenfolgen gefüllt. Es wird ein leeres Zeichenfolgenarray mit 15 Elementen erstellt, und die CopyTo(T[]) Methodenüberladung wird verwendet, um alle Elemente der Liste an das Array zu kopieren, das am ersten Element des Arrays beginnt. Die CopyTo(T[], Int32) Methodenüberladung wird verwendet, um alle Elemente der Liste an das Array zu kopieren, beginnend bei Arrayindex 6 (der Index 5 bleibt leer). Schließlich wird die CopyTo(Int32, T[], Int32, Int32) Methodenüberladung verwendet, um 3 Elemente aus der Liste zu kopieren, beginnend mit Index 2, in das Array ab Arrayindex 12 (der Index 11 bleibt leer). Der Inhalt des Arrays wird dann angezeigt.
using namespace System;
using namespace System::Collections::Generic;
void main()
{
List<String^>^ dinosaurs = gcnew List<String^>();
dinosaurs->Add("Tyrannosaurus");
dinosaurs->Add("Amargasaurus");
dinosaurs->Add("Mamenchisaurus");
dinosaurs->Add("Brachiosaurus");
dinosaurs->Add("Compsognathus");
Console::WriteLine();
for each(String^ dinosaurs in dinosaurs )
{
Console::WriteLine(dinosaurs);
}
// Create an array of 15 strings.
array<String^>^ arr = gcnew array<String^>(15);
dinosaurs->CopyTo(arr);
dinosaurs->CopyTo(arr, 6);
dinosaurs->CopyTo(2, arr, 12, 3);
Console::WriteLine("\nContents of the array:");
for each(String^ dinosaurs in arr )
{
Console::WriteLine(dinosaurs);
}
}
/* This code example produces the following output:
Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Deinonychus
Tyrannosaurus
Compsognathus
IndexOf("Tyrannosaurus"): 0
IndexOf("Tyrannosaurus", 3): 5
IndexOf("Tyrannosaurus", 2, 2): -1
*/
using System;
using System.Collections.Generic;
public class Example
{
public static void Main()
{
List<string> dinosaurs = new List<string>();
dinosaurs.Add("Tyrannosaurus");
dinosaurs.Add("Amargasaurus");
dinosaurs.Add("Mamenchisaurus");
dinosaurs.Add("Brachiosaurus");
dinosaurs.Add("Compsognathus");
Console.WriteLine();
foreach(string dinosaur in dinosaurs)
{
Console.WriteLine(dinosaur);
}
// Declare an array with 15 elements.
string[] array = new string[15];
dinosaurs.CopyTo(array);
dinosaurs.CopyTo(array, 6);
dinosaurs.CopyTo(2, array, 12, 3);
Console.WriteLine("\nContents of the array:");
foreach(string dinosaur in array)
{
Console.WriteLine(dinosaur);
}
}
}
/* This code example produces the following output:
Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Compsognathus
Contents of the array:
Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Compsognathus
Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Compsognathus
Mamenchisaurus
Brachiosaurus
Compsognathus
*/
Imports System.Collections.Generic
Public Class Example
Public Shared Sub Main()
Dim dinosaurs As New List(Of String)
dinosaurs.Add("Tyrannosaurus")
dinosaurs.Add("Amargasaurus")
dinosaurs.Add("Mamenchisaurus")
dinosaurs.Add("Brachiosaurus")
dinosaurs.Add("Compsognathus")
Console.WriteLine()
For Each dinosaur As String In dinosaurs
Console.WriteLine(dinosaur)
Next
' Declare an array with 15 elements (0 through 14).
Dim array(14) As String
dinosaurs.CopyTo(array)
dinosaurs.CopyTo(array, 6)
dinosaurs.CopyTo(2, array, 12, 3)
Console.WriteLine(vbLf & "Contents of the array:")
For Each dinosaur As String In array
Console.WriteLine(dinosaur)
Next
End Sub
End Class
' This code example produces the following output:
'
'Tyrannosaurus
'Amargasaurus
'Mamenchisaurus
'Brachiosaurus
'Compsognathus
'
'Contents of the array:
'Tyrannosaurus
'Amargasaurus
'Mamenchisaurus
'Brachiosaurus
'Compsognathus
'
'Tyrannosaurus
'Amargasaurus
'Mamenchisaurus
'Brachiosaurus
'Compsognathus
'
'Mamenchisaurus
'Brachiosaurus
'Compsognathus
CopyTo(T[], Int32)
Kopiert die gesamte List<T> in ein kompatibles eindimensionales Array, beginnend am angegebenen Index des Zielarrays.
public:
virtual void CopyTo(cli::array <T> ^ array, int arrayIndex);
public void CopyTo (T[] array, int arrayIndex);
abstract member CopyTo : 'T[] * int -> unit
override this.CopyTo : 'T[] * int -> unit
Public Sub CopyTo (array As T(), arrayIndex As Integer)
Parameter
- array
- T[]
Das eindimensionale Array, das das Ziel der aus der List<T> kopierten Elemente ist. Für das Array muss eine nullbasierte Indizierung verwendet werden.
- arrayIndex
- Int32
Der nullbasierte Index im array
, bei dem der Kopiervorgang beginnt.
Implementiert
Ausnahmen
array
ist null
.
arrayIndex
ist kleiner als 0.
Die Anzahl der Elemente in der Quell-List<T> ist größer als der verfügbare Platz vom arrayIndex
bis zum Ende des Ziel-array
s.
Hinweise
Mit dieser Methode Array.Copy werden die Elemente kopiert.
Die Elemente werden in die gleiche Reihenfolge kopiert Array , in der der Aufzählungsator durch die List<T>Enumerator durchlaufen wird.
Diese Methode ist ein O(n)-Vorgang, wobei n ist Count.
Gilt für
CopyTo(Int32, T[], Int32, Int32)
Kopiert einen Bereich von Elementen aus der List<T> in ein kompatibles eindimensionales Array, beginnend ab dem angegebenen Index im Zielarray.
public:
void CopyTo(int index, cli::array <T> ^ array, int arrayIndex, int count);
public void CopyTo (int index, T[] array, int arrayIndex, int count);
member this.CopyTo : int * 'T[] * int * int -> unit
Public Sub CopyTo (index As Integer, array As T(), arrayIndex As Integer, count As Integer)
Parameter
- array
- T[]
Das eindimensionale Array, das das Ziel der aus der List<T> kopierten Elemente ist. Für das Array muss eine nullbasierte Indizierung verwendet werden.
- arrayIndex
- Int32
Der nullbasierte Index im array
, bei dem der Kopiervorgang beginnt.
- count
- Int32
Die Anzahl der zu kopierenden Elemente.
Ausnahmen
array
ist null
.
index
ist kleiner als 0.
- oder -
arrayIndex
ist kleiner als 0.
- oder -
count
ist kleiner als 0.
index
ist gleich oder größer als die Count der Quell-List<T>.
- oder -
Die Anzahl der Elemente vom index
bis zum Ende der Quell-List<T> ist größer als der verfügbare Platz vom arrayIndex
bis zum Ende des Ziel-array
s.
Hinweise
Mit dieser Methode Array.Copy werden die Elemente kopiert.
Die Elemente werden in die gleiche Reihenfolge kopiert Array , in der der Aufzählungsator durch die List<T>Enumerator durchlaufen wird.
Diese Methode ist ein O(n)-Vorgang, wobei n ist count
.
Gilt für
CopyTo(T[])
Kopiert die gesamte List<T> in ein kompatibles eindimensionales Array, wobei am Anfang des Zielarrays begonnen wird.
public:
void CopyTo(cli::array <T> ^ array);
public void CopyTo (T[] array);
member this.CopyTo : 'T[] -> unit
Public Sub CopyTo (array As T())
Parameter
- array
- T[]
Das eindimensionale Array, das das Ziel der aus der List<T> kopierten Elemente ist. Für das Array muss eine nullbasierte Indizierung verwendet werden.
Ausnahmen
array
ist null
.
Die Anzahl der Elemente in der Quell-List<T> ist größer als die Anzahl von Elementen, die das Ziel-array
enthalten kann.
Hinweise
Mit dieser Methode Array.Copy werden die Elemente kopiert.
Die Elemente werden in die gleiche Reihenfolge kopiert Array , in der der Aufzählungsator durch die List<T>Enumerator durchlaufen wird.
Diese Methode ist ein O(n)-Vorgang, wobei n ist Count.