ArrayList.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 o ArrayList una parte de ella en una matriz unidimensional.
Sobrecargas
| Nombre | Description |
|---|---|
| CopyTo(Array) |
Copia todo en ArrayList una unidimensional Arraycompatible, comenzando al principio de la matriz de destino. |
| CopyTo(Array, Int32) |
Copia todo en ArrayList una unidimensional Arraycompatible, empezando por el índice especificado de la matriz de destino. |
| CopyTo(Int32, Array, Int32, Int32) |
Copia un intervalo de elementos de ArrayList a una unidimensional Arraycompatible, empezando por el índice especificado de la matriz de destino. |
CopyTo(Array)
public:
virtual void CopyTo(Array ^ array);
public virtual void CopyTo(Array array);
abstract member CopyTo : Array -> unit
override this.CopyTo : Array -> unit
Public Overridable Sub CopyTo (array As Array)
Parámetros
- array
- Array
Unidimensional Array que es el destino de los elementos copiados de ArrayList. Array debe tener una indexación basada en cero.
Excepciones
array es null.
array es multidimensional.
O bien
El número de elementos del ArrayList origen es mayor que el número de elementos que puede contener el destino array .
El tipo del ArrayList origen no se puede convertir automáticamente al tipo del destino array.
Ejemplos
En el ejemplo de código siguiente se muestra cómo copiar un objeto ArrayList en una unidimensional System.Array.
using System;
using System.Collections;
public class SamplesArrayList {
public static void Main() {
// Creates and initializes the source ArrayList.
ArrayList mySourceList = new ArrayList();
mySourceList.Add( "three" );
mySourceList.Add( "napping" );
mySourceList.Add( "cats" );
mySourceList.Add( "in" );
mySourceList.Add( "the" );
mySourceList.Add( "barn" );
// Creates and initializes the one-dimensional target Array.
String[] myTargetArray = new String[15];
myTargetArray[0] = "The";
myTargetArray[1] = "quick";
myTargetArray[2] = "brown";
myTargetArray[3] = "fox";
myTargetArray[4] = "jumps";
myTargetArray[5] = "over";
myTargetArray[6] = "the";
myTargetArray[7] = "lazy";
myTargetArray[8] = "dog";
// Displays the values of the target Array.
Console.WriteLine( "The target Array contains the following (before and after copying):" );
PrintValues( myTargetArray, ' ' );
// Copies the second element from the source ArrayList to the target Array starting at index 7.
mySourceList.CopyTo( 1, myTargetArray, 7, 1 );
// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );
// Copies the entire source ArrayList to the target Array starting at index 6.
mySourceList.CopyTo( myTargetArray, 6 );
// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );
// Copies the entire source ArrayList to the target Array starting at index 0.
mySourceList.CopyTo( myTargetArray );
// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );
}
public static void PrintValues( String[] myArr, char mySeparator ) {
for ( int i = 0; i < myArr.Length; i++ )
Console.Write( "{0}{1}", mySeparator, myArr[i] );
Console.WriteLine();
}
}
/*
This code produces the following output.
The target Array contains the following (before and after copying):
The quick brown fox jumps over the lazy dog
The quick brown fox jumps over the napping dog
The quick brown fox jumps over three napping cats in the barn
three napping cats in the barn three napping cats in the barn
*/
Imports System.Collections
Public Class SamplesArrayList
Public Shared Sub Main()
' Creates and initializes the source ArrayList.
Dim mySourceList As New ArrayList()
mySourceList.Add("three")
mySourceList.Add("napping")
mySourceList.Add("cats")
mySourceList.Add("in")
mySourceList.Add("the")
mySourceList.Add("barn")
' Creates and initializes the one-dimensional target Array.
Dim myTargetArray(14) As String
myTargetArray(0) = "The"
myTargetArray(1) = "quick"
myTargetArray(2) = "brown"
myTargetArray(3) = "fox"
myTargetArray(4) = "jumps"
myTargetArray(5) = "over"
myTargetArray(6) = "the"
myTargetArray(7) = "lazy"
myTargetArray(8) = "dog"
' Displays the values of the target Array.
Console.WriteLine("The target Array contains the following " _
+ "(before and after copying):")
PrintValues(myTargetArray, " "c)
' Copies the second element from the source ArrayList to the target
' Array starting at index 7.
mySourceList.CopyTo(1, myTargetArray, 7, 1)
' Displays the values of the target Array.
PrintValues(myTargetArray, " "c)
' Copies the entire source ArrayList to the target Array starting
' at index 6.
mySourceList.CopyTo(myTargetArray, 6)
' Displays the values of the target Array.
PrintValues(myTargetArray, " "c)
' Copies the entire source ArrayList to the target Array starting
' at index 0.
mySourceList.CopyTo(myTargetArray)
' Displays the values of the target Array.
PrintValues(myTargetArray, " "c)
End Sub
Public Shared Sub PrintValues(myArr() As String, mySeparator As Char)
Dim i As Integer
For i = 0 To myArr.Length - 1
Console.Write("{0}{1}", mySeparator, myArr(i))
Next i
Console.WriteLine()
End Sub
End Class
' This code produces the following output.
'
' The target Array contains the following (before and after copying):
' The quick brown fox jumps over the lazy dog
' The quick brown fox jumps over the napping dog
' The quick brown fox jumps over three napping cats in the barn
' three napping cats in the barn three napping cats in the barn
Comentarios
La matriz especificada debe ser de un tipo compatible.
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 .ArrayList
Este método es una O(n) operación, donde n es Count.
Se aplica a
CopyTo(Array, Int32)
public:
virtual void CopyTo(Array ^ array, int arrayIndex);
public virtual void CopyTo(Array array, int arrayIndex);
abstract member CopyTo : Array * int -> unit
override this.CopyTo : Array * int -> unit
Public Overridable Sub CopyTo (array As Array, arrayIndex As Integer)
Parámetros
- array
- Array
Unidimensional Array que es el destino de los elementos copiados de ArrayList. Array debe tener una indexación basada en cero.
- arrayIndex
- Int32
Índice de base cero en el array que comienza la copia.
Implementaciones
Excepciones
array es null.
arrayIndex es menor que cero.
array es multidimensional.
O bien
El número de elementos del ArrayList origen es mayor que el espacio disponible desde arrayIndex hasta el final del destino array.
El tipo del ArrayList origen no se puede convertir automáticamente al tipo del destino array.
Ejemplos
En el ejemplo de código siguiente se muestra cómo copiar un objeto ArrayList en una unidimensional System.Array.
using System;
using System.Collections;
public class SamplesArrayList1 {
public static void Main() {
// Creates and initializes the source ArrayList.
ArrayList mySourceList = new ArrayList();
mySourceList.Add( "three" );
mySourceList.Add( "napping" );
mySourceList.Add( "cats" );
mySourceList.Add( "in" );
mySourceList.Add( "the" );
mySourceList.Add( "barn" );
// Creates and initializes the one-dimensional target Array.
String[] myTargetArray = new String[15];
myTargetArray[0] = "The";
myTargetArray[1] = "quick";
myTargetArray[2] = "brown";
myTargetArray[3] = "fox";
myTargetArray[4] = "jumps";
myTargetArray[5] = "over";
myTargetArray[6] = "the";
myTargetArray[7] = "lazy";
myTargetArray[8] = "dog";
// Displays the values of the target Array.
Console.WriteLine( "The target Array contains the following (before and after copying):" );
PrintValues( myTargetArray, ' ' );
// Copies the second element from the source ArrayList to the target Array, starting at index 7.
mySourceList.CopyTo( 1, myTargetArray, 7, 1 );
// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );
// Copies the entire source ArrayList to the target Array, starting at index 6.
mySourceList.CopyTo( myTargetArray, 6 );
// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );
// Copies the entire source ArrayList to the target Array, starting at index 0.
mySourceList.CopyTo( myTargetArray );
// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );
}
public static void PrintValues( String[] myArr, char mySeparator ) {
for ( int i = 0; i < myArr.Length; i++ )
Console.Write( "{0}{1}", mySeparator, myArr[i] );
Console.WriteLine();
}
}
/*
This code produces the following output.
The target Array contains the following (before and after copying):
The quick brown fox jumps over the lazy dog
The quick brown fox jumps over the napping dog
The quick brown fox jumps over three napping cats in the barn
three napping cats in the barn three napping cats in the barn
*/
Imports System.Collections
Public Class SamplesArrayList
Public Shared Sub Main()
' Creates and initializes the source ArrayList.
Dim mySourceList As New ArrayList()
mySourceList.Add("three")
mySourceList.Add("napping")
mySourceList.Add("cats")
mySourceList.Add("in")
mySourceList.Add("the")
mySourceList.Add("barn")
' Creates and initializes the one-dimensional target Array.
Dim myTargetArray(14) As String
myTargetArray(0) = "The"
myTargetArray(1) = "quick"
myTargetArray(2) = "brown"
myTargetArray(3) = "fox"
myTargetArray(4) = "jumps"
myTargetArray(5) = "over"
myTargetArray(6) = "the"
myTargetArray(7) = "lazy"
myTargetArray(8) = "dog"
' Displays the values of the target Array.
Console.WriteLine("The target Array contains the following (before and after copying):")
PrintValues(myTargetArray, " "c)
' Copies the second element from the source ArrayList to the target Array, starting at index 7.
mySourceList.CopyTo(1, myTargetArray, 7, 1)
' Displays the values of the target Array.
PrintValues(myTargetArray, " "c)
' Copies the entire source ArrayList to the target Array, starting at index 6.
mySourceList.CopyTo(myTargetArray, 6)
' Displays the values of the target Array.
PrintValues(myTargetArray, " "c)
' Copies the entire source ArrayList to the target Array, starting at index 0.
mySourceList.CopyTo(myTargetArray)
' Displays the values of the target Array.
PrintValues(myTargetArray, " "c)
End Sub
Public Shared Sub PrintValues(myArr() As String, mySeparator As Char)
Dim i As Integer
For i = 0 To myArr.Length - 1
Console.Write("{0}{1}", mySeparator, myArr(i))
Next i
Console.WriteLine()
End Sub
End Class
' This code produces the following output.
'
' The target Array contains the following (before and after copying):
' The quick brown fox jumps over the lazy dog
' The quick brown fox jumps over the napping dog
' The quick brown fox jumps over three napping cats in the barn
' three napping cats in the barn three napping cats in the barn
Comentarios
La matriz especificada debe ser de un tipo compatible.
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 .ArrayList
Este método es una O(n) operación, donde n es Count.
Se aplica a
CopyTo(Int32, Array, Int32, Int32)
public:
virtual void CopyTo(int index, Array ^ array, int arrayIndex, int count);
public virtual void CopyTo(int index, Array array, int arrayIndex, int count);
abstract member CopyTo : int * Array * int * int -> unit
override this.CopyTo : int * Array * int * int -> unit
Public Overridable Sub CopyTo (index As Integer, array As Array, arrayIndex As Integer, count As Integer)
Parámetros
- array
- Array
Unidimensional Array que es el destino de los elementos copiados de ArrayList. Array debe tener una indexación basada en cero.
- arrayIndex
- Int32
Índice de base cero en el array que comienza la copia.
- count
- Int32
Número de elementos que se van a copiar.
Excepciones
array es null.
index es menor que cero.
O bien
arrayIndex es menor que cero.
O bien
count es menor que cero.
array es multidimensional.
O bien
index es igual o mayor que el Count de origen ArrayList.
O bien
El número de elementos desde index hasta el final del ArrayList origen es mayor que el espacio disponible desde arrayIndex hasta el final del destino array.
El tipo del ArrayList origen no se puede convertir automáticamente al tipo del destino array.
Ejemplos
En el ejemplo de código siguiente se muestra cómo copiar un objeto ArrayList en una unidimensional System.Array.
using System;
using System.Collections;
public class SamplesArrayList1 {
public static void Main() {
// Creates and initializes the source ArrayList.
ArrayList mySourceList = new ArrayList();
mySourceList.Add( "three" );
mySourceList.Add( "napping" );
mySourceList.Add( "cats" );
mySourceList.Add( "in" );
mySourceList.Add( "the" );
mySourceList.Add( "barn" );
// Creates and initializes the one-dimensional target Array.
String[] myTargetArray = new String[15];
myTargetArray[0] = "The";
myTargetArray[1] = "quick";
myTargetArray[2] = "brown";
myTargetArray[3] = "fox";
myTargetArray[4] = "jumps";
myTargetArray[5] = "over";
myTargetArray[6] = "the";
myTargetArray[7] = "lazy";
myTargetArray[8] = "dog";
// Displays the values of the target Array.
Console.WriteLine( "The target Array contains the following (before and after copying):" );
PrintValues( myTargetArray, ' ' );
// Copies the second element from the source ArrayList to the target Array, starting at index 7.
mySourceList.CopyTo( 1, myTargetArray, 7, 1 );
// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );
// Copies the entire source ArrayList to the target Array, starting at index 6.
mySourceList.CopyTo( myTargetArray, 6 );
// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );
// Copies the entire source ArrayList to the target Array, starting at index 0.
mySourceList.CopyTo( myTargetArray );
// Displays the values of the target Array.
PrintValues( myTargetArray, ' ' );
}
public static void PrintValues( String[] myArr, char mySeparator ) {
for ( int i = 0; i < myArr.Length; i++ )
Console.Write( "{0}{1}", mySeparator, myArr[i] );
Console.WriteLine();
}
}
/*
This code produces the following output.
The target Array contains the following (before and after copying):
The quick brown fox jumps over the lazy dog
The quick brown fox jumps over the napping dog
The quick brown fox jumps over three napping cats in the barn
three napping cats in the barn three napping cats in the barn
*/
Imports System.Collections
Public Class SamplesArrayList
Public Shared Sub Main()
' Creates and initializes the source ArrayList.
Dim mySourceList As New ArrayList()
mySourceList.Add("three")
mySourceList.Add("napping")
mySourceList.Add("cats")
mySourceList.Add("in")
mySourceList.Add("the")
mySourceList.Add("barn")
' Creates and initializes the one-dimensional target Array.
Dim myTargetArray(14) As String
myTargetArray(0) = "The"
myTargetArray(1) = "quick"
myTargetArray(2) = "brown"
myTargetArray(3) = "fox"
myTargetArray(4) = "jumps"
myTargetArray(5) = "over"
myTargetArray(6) = "the"
myTargetArray(7) = "lazy"
myTargetArray(8) = "dog"
' Displays the values of the target Array.
Console.WriteLine("The target Array contains the following (before and after copying):")
PrintValues(myTargetArray, " "c)
' Copies the second element from the source ArrayList to the target Array, starting at index 7.
mySourceList.CopyTo(1, myTargetArray, 7, 1)
' Displays the values of the target Array.
PrintValues(myTargetArray, " "c)
' Copies the entire source ArrayList to the target Array, starting at index 6.
mySourceList.CopyTo(myTargetArray, 6)
' Displays the values of the target Array.
PrintValues(myTargetArray, " "c)
' Copies the entire source ArrayList to the target Array, starting at index 0.
mySourceList.CopyTo(myTargetArray)
' Displays the values of the target Array.
PrintValues(myTargetArray, " "c)
End Sub
Public Shared Sub PrintValues(myArr() As String, mySeparator As Char)
Dim i As Integer
For i = 0 To myArr.Length - 1
Console.Write("{0}{1}", mySeparator, myArr(i))
Next i
Console.WriteLine()
End Sub
End Class
' This code produces the following output.
'
' The target Array contains the following (before and after copying):
' The quick brown fox jumps over the lazy dog
' The quick brown fox jumps over the napping dog
' The quick brown fox jumps over three napping cats in the barn
' three napping cats in the barn three napping cats in the barn
Comentarios
La matriz especificada debe ser de un tipo compatible.
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 .ArrayList
Este método es una O(n) operación, donde n es count.