List<T>.CopyTo List<T>.CopyTo List<T>.CopyTo List<T>.CopyTo Method

Definição

Copia o List<T> ou parte dele para uma matriz.Copies the List<T> or a portion of it to an array.

Sobrecargas

CopyTo(T[], Int32) CopyTo(T[], Int32) CopyTo(T[], Int32) CopyTo(T[], Int32)

Copia todo o List<T> para uma matriz unidimensional compatível, iniciando no índice especificado da matriz de destino.Copies the entire List<T> to a compatible one-dimensional array, starting at the specified index of the target array.

CopyTo(Int32, T[], Int32, Int32) CopyTo(Int32, T[], Int32, Int32) CopyTo(Int32, T[], Int32, Int32) CopyTo(Int32, T[], Int32, Int32)

Copia um intervalo de elementos do List<T> para uma matriz unidimensional compatível, começando pelo índice especificado da matriz de destino.Copies a range of elements from the List<T> to a compatible one-dimensional array, starting at the specified index of the target array.

CopyTo(T[]) CopyTo(T[]) CopyTo(T[]) CopyTo(T[])

Copia todo o List<T> em uma matriz unidimensional compatível, a partir do início da matriz de destino.Copies the entire List<T> to a compatible one-dimensional array, starting at the beginning of the target array.

CopyTo(T[], Int32) CopyTo(T[], Int32) CopyTo(T[], Int32) CopyTo(T[], Int32)

Copia todo o List<T> para uma matriz unidimensional compatível, iniciando no índice especificado da matriz de destino.Copies the entire List<T> to a compatible one-dimensional array, starting at the specified index of the target array.

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)

Parâmetros

array
T[]

O Array unidimensional que é o destino dos elementos copiados de List<T>.The one-dimensional Array that is the destination of the elements copied from List<T>. O Array deve ter indexação com base em zero.The Array must have zero-based indexing.

arrayIndex
Int32 Int32 Int32 Int32

O índice com base em zero em array no qual a cópia começa.The zero-based index in array at which copying begins.

Implementações

Exceções

O número de elementos na origem List<T> é maior do que o espaço disponível de arrayIndex até o final do array de destino.The number of elements in the source List<T> is greater than the available space from arrayIndex to the end of the destination array.

Exemplos

O exemplo a seguir demonstra todas as três sobrecargas do CopyTo método.The following example demonstrates all three overloads of the CopyTo method. Um List<T> de cadeias de caracteres é criada e preenchida com cadeias de caracteres de 5.A List<T> of strings is created and populated with 5 strings. Uma matriz de cadeia de caracteres vazia de 15 elementos é criada e o CopyTo(T[]) sobrecarga do método é usada para copiar todos os elementos da lista para a matriz, começando no primeiro elemento da matriz.An empty string array of 15 elements is created, and the CopyTo(T[]) method overload is used to copy all the elements of the list to the array beginning at the first element of the array. O CopyTo(T[], Int32) sobrecarga do método é usada para copiar todos os elementos da lista para a matriz, começando no índice de matriz 6 (deixando vazio de índice 5).The CopyTo(T[], Int32) method overload is used to copy all the elements of the list to the array beginning at array index 6 (leaving index 5 empty). Por fim, o CopyTo(Int32, T[], Int32, Int32) sobrecarga do método é usada para copiar elementos de 3 da lista, começando com o índice 2, a matriz que começa em matriz de índice 12 (deixando vazio 11 índice).Finally, the CopyTo(Int32, T[], Int32, Int32) method overload is used to copy 3 elements from the list, beginning with index 2, to the array beginning at array index 12 (leaving index 11 empty). O conteúdo da matriz é exibido.The contents of the array are then displayed.

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
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

Comentários

Este método usa Array.Copy para copiar os elementos.This method uses Array.Copy to copy the elements.

Os elementos são copiados para o Array na mesma ordem em que o enumerador que itera por meio de List<T>.The elements are copied to the Array in the same order in which the enumerator iterates through the List<T>.

Esse método é um O (n) a operação, onde n é Count.This method is an O(n) operation, where n is Count.

CopyTo(Int32, T[], Int32, Int32) CopyTo(Int32, T[], Int32, Int32) CopyTo(Int32, T[], Int32, Int32) CopyTo(Int32, T[], Int32, Int32)

Copia um intervalo de elementos do List<T> para uma matriz unidimensional compatível, começando pelo índice especificado da matriz de destino.Copies a range of elements from the List<T> to a compatible one-dimensional array, starting at the specified index of the target array.

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)

Parâmetros

index
Int32 Int32 Int32 Int32

O índice baseado em zero no List<T> de origem em que a cópia começa.The zero-based index in the source List<T> at which copying begins.

array
T[]

O Array unidimensional que é o destino dos elementos copiados de List<T>.The one-dimensional Array that is the destination of the elements copied from List<T>. O Array deve ter indexação com base em zero.The Array must have zero-based indexing.

arrayIndex
Int32 Int32 Int32 Int32

O índice com base em zero em array no qual a cópia começa.The zero-based index in array at which copying begins.

count
Int32 Int32 Int32 Int32

O número de elementos a serem copiados.The number of elements to copy.

Exceções

index é menor que 0.index is less than 0.

- ou --or- arrayIndex é menor que 0.arrayIndex is less than 0.

- ou --or- count é menor que 0.count is less than 0.

index é igual a ou maior que o Count do List<T> de origem.index is equal to or greater than the Count of the source List<T>.

- ou --or- O número de elementos de index até o final do List<T> de origem é maior que o espaço disponível do arrayIndex até o final do array de destino.The number of elements from index to the end of the source List<T> is greater than the available space from arrayIndex to the end of the destination array.

Exemplos

O exemplo a seguir demonstra todas as três sobrecargas do CopyTo método.The following example demonstrates all three overloads of the CopyTo method. Um List<T> de cadeias de caracteres é criada e preenchida com cadeias de caracteres de 5.A List<T> of strings is created and populated with 5 strings. Uma matriz de cadeia de caracteres vazia de 15 elementos é criada e o CopyTo(T[]) sobrecarga do método é usada para copiar todos os elementos da lista para a matriz, começando no primeiro elemento da matriz.An empty string array of 15 elements is created, and the CopyTo(T[]) method overload is used to copy all the elements of the list to the array beginning at the first element of the array. O CopyTo(T[], Int32) sobrecarga do método é usada para copiar todos os elementos da lista para a matriz, começando no índice de matriz 6 (deixando vazio de índice 5).The CopyTo(T[], Int32) method overload is used to copy all the elements of the list to the array beginning at array index 6 (leaving index 5 empty). Por fim, o CopyTo(Int32, T[], Int32, Int32) sobrecarga do método é usada para copiar elementos de 3 da lista, começando com o índice 2, a matriz que começa em matriz de índice 12 (deixando vazio 11 índice).Finally, the CopyTo(Int32, T[], Int32, Int32) method overload is used to copy 3 elements from the list, beginning with index 2, to the array beginning at array index 12 (leaving index 11 empty). O conteúdo da matriz é exibido.The contents of the array are then displayed.

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
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

Comentários

Este método usa Array.Copy para copiar os elementos.This method uses Array.Copy to copy the elements.

Os elementos são copiados para o Array na mesma ordem em que o enumerador que itera por meio de List<T>.The elements are copied to the Array in the same order in which the enumerator iterates through the List<T>.

Esse método é um O (n) a operação, onde n é count.This method is an O(n) operation, where n is count.

CopyTo(T[]) CopyTo(T[]) CopyTo(T[]) CopyTo(T[])

Copia todo o List<T> em uma matriz unidimensional compatível, a partir do início da matriz de destino.Copies the entire List<T> to a compatible one-dimensional array, starting at the beginning of the target array.

public:
 void CopyTo(cli::array <T> ^ array);
public void CopyTo (T[] array);
member this.CopyTo : 'T[] -> unit
Public Sub CopyTo (array As T())

Parâmetros

array
T[]

O Array unidimensional que é o destino dos elementos copiados de List<T>.The one-dimensional Array that is the destination of the elements copied from List<T>. O Array deve ter indexação com base em zero.The Array must have zero-based indexing.

Exceções

O número de elementos no List<T> de origem é maior que o número de elementos que o array de destino pode conter.The number of elements in the source List<T> is greater than the number of elements that the destination array can contain.

Exemplos

O exemplo a seguir demonstra todas as três sobrecargas do CopyTo método.The following example demonstrates all three overloads of the CopyTo method. Um List<T> de cadeias de caracteres é criada e preenchida com cadeias de caracteres de 5.A List<T> of strings is created and populated with 5 strings. Uma matriz de cadeia de caracteres vazia de 15 elementos é criada e o CopyTo(T[]) sobrecarga do método é usada para copiar todos os elementos da lista para a matriz, começando no primeiro elemento da matriz.An empty string array of 15 elements is created, and the CopyTo(T[]) method overload is used to copy all the elements of the list to the array beginning at the first element of the array. O CopyTo(T[], Int32) sobrecarga do método é usada para copiar todos os elementos da lista para a matriz, começando no índice de matriz 6 (deixando vazio de índice 5).The CopyTo(T[], Int32) method overload is used to copy all the elements of the list to the array beginning at array index 6 (leaving index 5 empty). Por fim, o CopyTo(Int32, T[], Int32, Int32) sobrecarga do método é usada para copiar elementos de 3 da lista, começando com o índice 2, a matriz que começa em matriz de índice 12 (deixando vazio 11 índice).Finally, the CopyTo(Int32, T[], Int32, Int32) method overload is used to copy 3 elements from the list, beginning with index 2, to the array beginning at array index 12 (leaving index 11 empty). O conteúdo da matriz é exibido.The contents of the array are then displayed.

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
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

Comentários

Este método usa Array.Copy para copiar os elementos.This method uses Array.Copy to copy the elements.

Os elementos são copiados para o Array na mesma ordem em que o enumerador que itera por meio de List<T>.The elements are copied to the Array in the same order in which the enumerator iterates through the List<T>.

Esse método é um O (n) a operação, onde n é Count.This method is an O(n) operation, where n is Count.

Aplica-se a