Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês
Esta documentação foi arquivada e não está sendo atualizada.

Classe ArrayList

Implementa a interface IList, usando uma matriz cujo tamanho é aumentado dinamicamente como necessário.

Namespace:  System.Collections
Assembly:  mscorlib (em mscorlib.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
public class ArrayList : IList, ICollection, 
	IEnumerable, ICloneable

Não é garantido que o  ArrayList esteja ordenado.Você deve ordenar o ArrayList antes de executar operações (tais como BinarySearch) que exigem que o ArrayList esteja ordenado.

A capacidade de um ArrayList é o número de elementos que o ArrayList pode conter.Conforme os elementos são adicionados a um ArrayList, sua capacidade é automaticamente aumentada conforme necessário através da realocação.A capacidade pode ser diminuída ou chamando TrimToSize ou configurando a propriedade Capacity explicitamente.

Elementos desta coleção são acessados usando índices inteiros.
Índices nessa coleção são baseados em zero.

ArrayList aceita null sistema autônomo um valor válido e permite que elementos duplicados.

O exemplo de código a seguir mostra como criar e inicializar um ArrayList e como imprimir seus valores.

using System;
using System.Collections;
publicclass SamplesArrayList  {

   publicstaticvoid Main()  {

      // Creates and initializes a new ArrayList.
      ArrayList myAL = new ArrayList();
      myAL.Add("Hello");
      myAL.Add("World");
      myAL.Add("!");

      // Displays the properties and values of the ArrayList.
      Console.WriteLine( "myAL" );
      Console.WriteLine( "    Count:    {0}", myAL.Count );
      Console.WriteLine( "    Capacity: {0}", myAL.Capacity );
      Console.Write( "    Values:" );
      PrintValues( myAL );
   }

   publicstaticvoid PrintValues( IEnumerable myList )  {
      foreach ( Object obj in myList )
         Console.Write( "   {0}", obj );
      Console.WriteLine();
   }

}


/* 
This code produces output similar to the following:

myAL
    Count:    3
    Capacity: f
    Values:   Hello   World   !

*/
import System.*;
import System.Collections.*;

public class SamplesArrayList
{
    public static void main(String[] args)
    {
        // Creates and initializes a new ArrayList.
        ArrayList myAL = new ArrayList();

        myAL.Add("Hello");
        myAL.Add("World");
        myAL.Add("!");

        // Displays the properties and values of the ArrayList.
        Console.WriteLine("myAL");
        Console.WriteLine("    Count:    {0}", (Int32)myAL.get_Count());
        Console.WriteLine("    Capacity: {0}", (Int32)myAL.get_Capacity());
        Console.Write("    Values:");
        PrintValues(myAL);
    } //main

    public static void PrintValues(IEnumerable myList)
    {
        IEnumerator objMyEnum = myList.GetEnumerator();
        while (objMyEnum.MoveNext()) {
            Object obj = objMyEnum.get_Current();
            Console.Write("   {0}", obj);
        }
        Console.WriteLine();
    } //PrintValues
} //SamplesArrayList 
/* 
 This code produces output similar to the following:

 myAL
     Count:    3
     Capacity: 4
     Values:   Hello   World   !

 */


import System;
import System.Collections;

// Creates and initializes a new ArrayList.
var myAL : ArrayList = new ArrayList();
myAL.Add("Hello");
myAL.Add("World");
myAL.Add("!");

// Displays the properties and values of the ArrayList.
Console.WriteLine( "myAL" );
Console.WriteLine( "\tCount:    {0}", myAL.Count );
Console.WriteLine( "\tCapacity: {0}", myAL.Capacity );
Console.Write( "\tValues:" );
PrintValues( myAL );


function PrintValues( myList : IEnumerable )  {
   var myEnumerator : System.Collections.IEnumerator = myList.GetEnumerator();
   while ( myEnumerator.MoveNext() )
      Console.Write( "\t{0}", myEnumerator.Current );
   Console.WriteLine();
}
 /* 
 This code produces output similar to the following:

 myAL
     Count:    3
     Capacity: 4
     Values:    Hello    World    !
 */


Público estático (Shared no Visual Basic) membros desse tipo são thread-safe. Os membros da instâncianão estãogarantias de serem thread safe.

An ArrayList pode suportar vários leitores simultaneamente, desde que a coleção não é modificada. Para garantir a acesso thread-safe do ArrayList, todas as operações devem ser feitas por meio de wrapper retornado pela Synchronized método.

Enumerando através de um conjunto é intrinsically não um procedimento isenta de segmentos.Mesmo quando uma coleção é sincronizada, outros Threads poderá ainda modificar a coleção, que faz com que o enumerador para gerar uma exceção.Para garantir segurança de segmentos durante enumeração, você pode bloquear a coleção durante a enumeração inteira ou pegar as exceções resultantes de alterações feitas por outros segmentos.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360

o.NET Framework e.NET Compact Framework não oferecem suporte a todas as versões de cada plataforma. Para obter uma lista de versões suportadas, consulte Requisitos de sistema do .NET framework.

.NET Framework

Compatível com: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Compatível com: 3.5, 2.0, 1.0

XNA Framework

Compatível com: , 1.0
Mostrar: