ArrayList.ToArray Método

Definición

Copia los elementos de ArrayList en una nueva matriz.

Sobrecargas

ToArray()

Copia los elementos de ArrayList en una nueva matriz de Object.

ToArray(Type)

Copia los elementos de la matriz ArrayList a una nueva matriz del tipo de elemento especificado.

ToArray()

Copia los elementos de ArrayList en una nueva matriz de Object.

public:
 virtual cli::array <System::Object ^> ^ ToArray();
public virtual object[] ToArray ();
public virtual object?[] ToArray ();
abstract member ToArray : unit -> obj[]
override this.ToArray : unit -> obj[]
Public Overridable Function ToArray () As Object()

Devoluciones

Object[]

Matriz de Object que contiene copias de los elementos de ArrayList.

Comentarios

Los elementos se copian mediante Array.Copy, que es una O(n) operación, donde n es Count.

Se aplica a

ToArray(Type)

Copia los elementos de la matriz ArrayList a una nueva matriz del tipo de elemento especificado.

public:
 virtual Array ^ ToArray(Type ^ type);
public virtual Array ToArray (Type type);
abstract member ToArray : Type -> Array
override this.ToArray : Type -> Array
Public Overridable Function ToArray (type As Type) As Array

Parámetros

type
Type

Type de elemento de la matriz de destino que se va a crear y en la que se van a copiar los elementos.

Devoluciones

Array

Una matriz del tipo de elemento especificado que contiene copias de los elementos de la matriz ArrayList.

Excepciones

type es null.

El tipo del origen ArrayList no puede convertirse automáticamente al tipo especificado.

Ejemplos

En el ejemplo de copia siguiente se muestra cómo copiar los elementos de en ArrayList una matriz de cadenas.

using namespace System;
using namespace System::Collections;
void PrintIndexAndValues( ArrayList^ myList );
void PrintIndexAndValues( array<String^>^myArr );
int main()
{
   // Creates and initializes a new ArrayList.
   ArrayList^ myAL = gcnew ArrayList;
   myAL->Add( "The" );
   myAL->Add( "quick" );
   myAL->Add( "brown" );
   myAL->Add( "fox" );
   myAL->Add( "jumps" );
   myAL->Add( "over" );
   myAL->Add( "the" );
   myAL->Add( "lazy" );
   myAL->Add( "dog" );

   // Displays the values of the ArrayList.
   Console::WriteLine( "The ArrayList contains the following values:" );
   PrintIndexAndValues( myAL );

   // Copies the elements of the ArrayList to a string array.
   array<String^>^myArr = reinterpret_cast<array<String^>^>(myAL->ToArray( String::typeid ));

   // Displays the contents of the string array.
   Console::WriteLine( "The string array contains the following values:" );
   PrintIndexAndValues( myArr );
}

void PrintIndexAndValues( ArrayList^ myList )
{
   int i = 0;
   IEnumerator^ myEnum = myList->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Object^ o = safe_cast<Object^>(myEnum->Current);
      Console::WriteLine( "\t[{0}]:\t{1}", i++, o );
   }

   Console::WriteLine();
}

void PrintIndexAndValues( array<String^>^myArr )
{
   for ( int i = 0; i < myArr->Length; i++ )
      Console::WriteLine( "\t[{0}]:\t{1}", i, myArr[ i ] );
   Console::WriteLine();
}

/* 
This code produces the following output.

The ArrayList contains the following values:
        [0]:    The
        [1]:    quick
        [2]:    brown
        [3]:    fox
        [4]:    jumps
        [5]:    over
        [6]:    the
        [7]:    lazy
        [8]:    dog

The string array contains the following values:
        [0]:    The
        [1]:    quick
        [2]:    brown
        [3]:    fox
        [4]:    jumps
        [5]:    over
        [6]:    the
        [7]:    lazy
        [8]:    dog

*/
using System;
using System.Collections;

public class SamplesArrayList  {

   public static void Main()  {

      // Creates and initializes a new ArrayList.
      ArrayList myAL = new ArrayList();
      myAL.Add( "The" );
      myAL.Add( "quick" );
      myAL.Add( "brown" );
      myAL.Add( "fox" );
      myAL.Add( "jumps" );
      myAL.Add( "over" );
      myAL.Add( "the" );
      myAL.Add( "lazy" );
      myAL.Add( "dog" );

      // Displays the values of the ArrayList.
      Console.WriteLine( "The ArrayList contains the following values:" );
      PrintIndexAndValues( myAL );

      // Copies the elements of the ArrayList to a string array.
      String[] myArr = (String[]) myAL.ToArray( typeof( string ) );

      // Displays the contents of the string array.
      Console.WriteLine( "The string array contains the following values:" );
      PrintIndexAndValues( myArr );
   }

   public static void PrintIndexAndValues( ArrayList myList )  {
      int i = 0;
      foreach ( Object o in myList )
         Console.WriteLine( "\t[{0}]:\t{1}", i++, o );
      Console.WriteLine();
   }

   public static void PrintIndexAndValues( String[] myArr )  {
      for ( int i = 0; i < myArr.Length; i++ )
         Console.WriteLine( "\t[{0}]:\t{1}", i, myArr[i] );
      Console.WriteLine();
   }
}


/*
This code produces the following output.

The ArrayList contains the following values:
        [0]:    The
        [1]:    quick
        [2]:    brown
        [3]:    fox
        [4]:    jumps
        [5]:    over
        [6]:    the
        [7]:    lazy
        [8]:    dog

The string array contains the following values:
        [0]:    The
        [1]:    quick
        [2]:    brown
        [3]:    fox
        [4]:    jumps
        [5]:    over
        [6]:    the
        [7]:    lazy
        [8]:    dog

*/
Imports System.Collections

Public Class SamplesArrayList

    Public Shared Sub Main()

        ' Creates and initializes a new ArrayList.
        Dim myAL As New ArrayList()
        myAL.Add("The")
        myAL.Add("quick")
        myAL.Add("brown")
        myAL.Add("fox")
        myAL.Add("jumps")
        myAL.Add("over")
        myAL.Add("the")
        myAL.Add("lazy")
        myAL.Add("dog")

        ' Displays the values of the ArrayList.
        Console.WriteLine("The ArrayList contains the following values:")
        PrintIndexAndValues(myAL)

        ' Copies the elements of the ArrayList to a string array.
        Dim myArr As String() = CType(myAL.ToArray(GetType(String)), String())

        ' Displays the contents of the string array.
        Console.WriteLine("The string array contains the following values:")
        PrintIndexAndValues(myArr)

    End Sub

    Overloads Public Shared Sub PrintIndexAndValues(myList As ArrayList)
        Dim i As Integer = 0
        Dim o As [Object]
        For Each o In  myList
            Console.WriteLine("        [{0}]:    {1}", i, o)
            i = i + 1
        Next o
        Console.WriteLine()
    End Sub

    Overloads Public Shared Sub PrintIndexAndValues(myArr() As String)
        Dim i As Integer
        For i = 0 To myArr.Length - 1
            Console.WriteLine("        [{0}]:    {1}", i, myArr(i))
        Next i
        Console.WriteLine()
    End Sub

End Class


'This code produces the following output.
'
'The ArrayList contains the following values:
'        [0]:    The
'        [1]:    quick
'        [2]:    brown
'        [3]:    fox
'        [4]:    jumps
'        [5]:    over
'        [6]:    the
'        [7]:    lazy
'        [8]:    dog
'
'The string array contains the following values:
'        [0]:    The
'        [1]:    quick
'        [2]:    brown
'        [3]:    fox
'        [4]:    jumps
'        [5]:    over
'        [6]:    the
'        [7]:    lazy
'        [8]:    dog

Comentarios

Todos los objetos del ArrayList objeto se convertirán en el Type especificado en el type parámetro .

Los elementos se copian mediante Array.Copy, que es una O(n) operación, donde n es Count.

Consulte también

Se aplica a