StringEnumerator.Current Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém o elemento atual na coleção.
public:
property System::String ^ Current { System::String ^ get(); };
public string Current { get; }
member this.Current : string
Public ReadOnly Property Current As String
Valor de Propriedade
O elemento atual na coleção.
Exceções
O enumerador está posicionado antes do primeiro elemento da coleção ou depois do último elemento.
Exemplos
O exemplo de código seguinte demonstra várias das propriedades e métodos de StringEnumerator.
using System;
using System.Collections.Specialized;
public class SamplesStringEnumerator {
public static void Main() {
// Creates and initializes a StringCollection.
StringCollection myCol = new StringCollection();
String[] myArr = new String[] { "red", "orange", "yellow", "green", "blue", "indigo", "violet" };
myCol.AddRange( myArr );
// Enumerates the elements in the StringCollection.
StringEnumerator myEnumerator = myCol.GetEnumerator();
while ( myEnumerator.MoveNext() )
Console.WriteLine( "{0}", myEnumerator.Current );
Console.WriteLine();
// Resets the enumerator and displays the first element again.
myEnumerator.Reset();
if ( myEnumerator.MoveNext() )
Console.WriteLine( "The first element is {0}.", myEnumerator.Current );
}
}
/*
This code produces the following output.
red
orange
yellow
green
blue
indigo
violet
The first element is red.
*/
Imports System.Collections.Specialized
Public Class SamplesStringEnumerator
Public Shared Sub Main()
' Creates and initializes a StringCollection.
Dim myCol As New StringCollection()
Dim myArr() As [String] = {"red", "orange", "yellow", "green", "blue", "indigo", "violet"}
myCol.AddRange(myArr)
' Enumerates the elements in the StringCollection.
Dim myEnumerator As StringEnumerator = myCol.GetEnumerator()
While myEnumerator.MoveNext()
Console.WriteLine("{0}", myEnumerator.Current)
End While
Console.WriteLine()
' Resets the enumerator and displays the first element again.
myEnumerator.Reset()
If myEnumerator.MoveNext() Then
Console.WriteLine("The first element is {0}.", myEnumerator.Current)
End If
End Sub
End Class
'This code produces the following output.
'
'red
'orange
'yellow
'green
'blue
'indigo
'violet
'
'The first element is red.
Observações
Depois de um enumerador ser criado ou após a Reset ser chamado, MoveNext deve ser chamado para avançar o enumerador para o primeiro elemento da coleção antes de ler o valor de Current; caso contrário, Current está indefinido.
Current também lança uma exceção se a última chamada for MoveNext retornada false, o que indica o fim da coleção.
Current não move a posição do enumerador, e chamadas consecutivas devolvem Current o mesmo objeto até que qualquer MoveNext ou Reset seja chamado.
Um enumerador mantém-se válido enquanto a coleção permanecer inalterada. Se forem feitas alterações à coleção, como adicionar, modificar ou eliminar elementos, o enumerador fica irremediavelmente invalidado e a próxima chamada para MoveNext ou Reset lança um InvalidOperationException. Se a coleção for modificada entre MoveNext e Current, Current devolve o elemento ao qual está definida, mesmo que o enumerador já esteja invalidado.