List<T>.CopyTo Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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.
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)
- 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.
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[]
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
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.
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
- 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
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.
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[]
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.