List<T>.CopyTo Método

Definición

Copia la totalidad de List<T> o una parte en una matriz.

Sobrecargas

CopyTo(T[], Int32)

Copia la totalidad de List<T> en una matriz unidimensional compatible, empezando por el índice especificado de la matriz de destino.

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

Copia un intervalo de elementos de List<T> en una matriz unidimensional compatible, empezando en el índice especificado de la matriz de destino.

CopyTo(T[])

Copia toda la List<T> en una matriz unidimensional compatible, empezando en el principio de la matriz de destino.

Ejemplos

En el ejemplo siguiente se muestran las tres sobrecargas del CopyTo método . Se List<T> crea una de cadenas y se rellena con 5 cadenas. Se crea una matriz de cadenas vacías de 15 elementos y la sobrecarga del CopyTo(T[]) método se usa para copiar todos los elementos de la lista en la matriz a partir del primer elemento de la matriz. La CopyTo(T[], Int32) sobrecarga del método se usa para copiar todos los elementos de la lista en la matriz a partir del índice de matriz 6 (dejando el índice 5 vacío). Por último, la sobrecarga del CopyTo(Int32, T[], Int32, Int32) método se usa para copiar 3 elementos de la lista, a partir del índice 2, a la matriz a partir del índice de matriz 12 (dejando el índice 11 vacío). A continuación, se muestra el contenido de la matriz.

C#
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
 */

CopyTo(T[], Int32)

Source:
List.cs
Source:
List.cs
Source:
List.cs

Copia la totalidad de List<T> en una matriz unidimensional compatible, empezando por el índice especificado de la matriz de destino.

C#
public void CopyTo (T[] array, int arrayIndex);

Parámetros

array
T[]

Array unidimensional que constituye el destino de los elementos copiados de List<T>. La matriz Array debe tener una indización de base cero.

arrayIndex
Int32

Índice de base cero en la array donde comienza la copia.

Implementaciones

Excepciones

array es null.

arrayIndex es menor que 0.

El número de elementos de la List<T> de origen es mayor que el espacio disponible desde arrayIndex hasta el final de la array de destino.

Comentarios

Este método usa Array.Copy para copiar los elementos.

Los elementos se copian en en Array el mismo orden en el que el enumerador recorre en iteración .List<T>

Este método es una operación de O(n), donde n es Count.

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

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

Source:
List.cs
Source:
List.cs
Source:
List.cs

Copia un intervalo de elementos de List<T> en una matriz unidimensional compatible, empezando en el índice especificado de la matriz de destino.

C#
public void CopyTo (int index, T[] array, int arrayIndex, int count);

Parámetros

index
Int32

Índice de base cero de la List<T> de origen donde comienza la copia.

array
T[]

Array unidimensional que constituye el destino de los elementos copiados de List<T>. La matriz Array debe tener una indización de base cero.

arrayIndex
Int32

Índice de base cero en la array donde comienza la copia.

count
Int32

Número de elementos que se van a copiar.

Excepciones

array es null.

index es menor que 0.

O bien

arrayIndex es menor que 0.

O bien

count es menor que 0.

index es igual o mayor que la longitud de Count de List<T> de origen.

o bien

El número de elementos desde index hasta el final de List<T> de origen es mayor que el espacio disponible desde arrayIndex hasta el final de array de destino.

Comentarios

Este método usa Array.Copy para copiar los elementos.

Los elementos se copian en en Array el mismo orden en el que el enumerador recorre en iteración .List<T>

Este método es una operación de O(n), donde n es count.

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

CopyTo(T[])

Source:
List.cs
Source:
List.cs
Source:
List.cs

Copia toda la List<T> en una matriz unidimensional compatible, empezando en el principio de la matriz de destino.

C#
public void CopyTo (T[] array);

Parámetros

array
T[]

Array unidimensional que constituye el destino de los elementos copiados de List<T>. La matriz Array debe tener una indización de base cero.

Excepciones

array es null.

El número de elementos del List<T> de origen es mayor que el número de elementos que puede contener el array de destino.

Comentarios

Este método usa Array.Copy para copiar los elementos.

Los elementos se copian en en Array el mismo orden en el que el enumerador recorre en iteración .List<T>

Este método es una operación de O(n), donde n es Count.

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0