Ler em inglês

Compartilhar via


Collection.GetEnumerator Método

Definição

Retorna um enumerador que itera pela coleção.

C#
public System.Collections.IEnumerator GetEnumerator ();

Retornos

Um enumerador que pode ser usado para iterar pela coleção.

Exemplos

O exemplo a seguir mostra como usar GetEnumerator para recuperar todos os elementos de um Collection objeto .

VB
Dim customers As New Collection
' Insert code to add elements to the customers collection.
Dim custEnum As IEnumerator = customers.GetEnumerator()
custEnum.Reset()
Dim thisCustomer As Object
While custEnum.MoveNext()
    thisCustomer = custEnum.Current()
    ' Insert code to process this element of the collection.
End While

GetEnumerator constrói e retorna um objeto enumerador, que implementa a IEnumerator interface do System.Collections namespace. O objeto enumerador expõe a Current propriedade e os MoveNext métodos e Reset . Para obter mais informações, consulte Instrução For Each...Next.

Comentários

O para cada... Next Statement chama GetEnumerator para obter um objeto enumerador para dar suporte à iteração sobre os elementos de uma coleção. Normalmente, você usa um For Eachloop ...Next para percorrer uma coleção ou matriz e não precisa chamar GetEnumerator explicitamente.

Se você precisar de um controle mais próximo sobre a iteração do que as For Eachinstruções ...Next fornecem, poderá usar o GetEnumerator método para executar uma passagem personalizada. Veja a seguir alguns casos em que talvez seja necessário fazer isso.

  • Talvez você queira retornar ao início da coleção e iniciar a iteração novamente antes que ela seja concluída.

  • Talvez você queira ignorar um ou mais elementos por vários motivos.

  • Talvez seja necessário alterar os elementos da coleção no meio de uma passagem. Nesse caso, você deve obter um novo objeto enumerador porque o anterior é invalidado.

Aplica-se a

Produto Versões
.NET Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 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