Freigeben über


String.GetEnumerator-Methode

Ruft ein Objekt ab, das die einzelnen Zeichen dieser Zeichenfolge durchlaufen kann.

Namespace: System
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Function GetEnumerator As CharEnumerator
'Usage
Dim instance As String
Dim returnValue As CharEnumerator

returnValue = instance.GetEnumerator
public CharEnumerator GetEnumerator ()
public:
CharEnumerator^ GetEnumerator ()
public CharEnumerator GetEnumerator ()
public function GetEnumerator () : CharEnumerator

Rückgabewert

Ein CharEnumerator-Objekt.

Hinweise

Diese Methode wird von Programmiersprachen benötigt, die zum Durchlaufen von Membern einer Auflistung die IEnumerator-Schnittstelle unterstützen. Die foreach-Anweisung in den Programmiersprachen Microsoft Visual Basic und C# ruft z. B. diese Methode auf, um ein CharEnumerator-Objekt zurückzugeben, das schreibgeschützten Zugriff auf die Zeichen dieser Instanz von String gewähren kann.

Beispiel

Im folgenden Codebeispiel wird jeder System.Char in den Eingabezeichenfolgen mithilfe der GetEnumerator-Methode angezeigt.

' Example for the String.GetEnumerator( ) method.
Imports System
Imports System.Collections
Imports Microsoft.VisualBasic

Module GetEnumerator
   
    Sub Main()
        Console.WriteLine( _
            "This example of String.GetEnumerator( ) " & _
            "generates the following output.")

        EnumerateAndDisplay("Test Case")
        EnumerateAndDisplay("Has" & vbTab & "two" & vbTab & "tabs")
        EnumerateAndDisplay("Two" & vbLf & "new" & vbLf & "lines")
    End Sub 'Main
       
    Sub EnumerateAndDisplay(Operand As String)

        Console.WriteLine( _
            vbCrLf & "The characters in the string ""{0}"" are:", Operand)
          
        Dim OperandEnum As IEnumerator = Operand.GetEnumerator()
        Dim CharCount As Integer = 0
          
        While OperandEnum.MoveNext()
            CharCount += 1
            Console.Write(" ""{0}"" ", OperandEnum.Current)
        End While

        Console.WriteLine(vbCrLf & " Character count: {0}", CharCount)

    End Sub 'EnumerateAndDisplay
End Module 'GetEnumerator

' This example of String.GetEnumerator( ) generates the following output.
' 
' The characters in the string "Test Case" are:
'  "T"  "e"  "s"  "t"  " "  "C"  "a"  "s"  "e"
'  Character count: 9
' 
' The characters in the string "Has       two     tabs" are:
'  "H"  "a"  "s"  "       "  "t"  "w"  "o"  "     "  "t"  "a"  "b"  "s"
'  Character count: 12
' 
' The characters in the string "Two
' new
' lines" are:
'  "T"  "w"  "o"  "
' "  "n"  "e"  "w"  "
' "  "l"  "i"  "n"  "e"  "s"
'  Character count: 13
// Example for the String.GetEnumerator( ) method.
using System;
using System.Collections;

class GetEnumerator 
{
    public static void Main() 
    {
        Console.WriteLine( 
            "This example of String.GetEnumerator( ) " +
            "generates the following output." );

        EnumerateAndDisplay( "Test Case" );
        EnumerateAndDisplay( "Has\ttwo\ttabs" );
        EnumerateAndDisplay( "Two\nnew\nlines" );
    }

    static void EnumerateAndDisplay( String Operand )
    {
        Console.WriteLine( 
            "\nThe characters in the string \"{0}\" are:",
            Operand );

        IEnumerator OperandEnum = Operand.GetEnumerator( );
        int         CharCount = 0;

        while( OperandEnum.MoveNext( ) )
        {
            CharCount++;
            Console.Write( " '{0}' ", OperandEnum.Current );
        }
        Console.WriteLine( "\n Character count: {0}", CharCount );
    }
}

/*
This example of String.GetEnumerator( ) generates the following output.

The characters in the string "Test Case" are:
 'T'  'e'  's'  't'  ' '  'C'  'a'  's'  'e'
 Character count: 9

The characters in the string "Has       two     tabs" are:
 'H'  'a'  's'  '       '  't'  'w'  'o'  '     '  't'  'a'  'b'  's'
 Character count: 12

The characters in the string "Two
new
lines" are:
 'T'  'w'  'o'  '
'  'n'  'e'  'w'  '
'  'l'  'i'  'n'  'e'  's'
 Character count: 13
*/
// Example for the String::GetEnumerator( ) method.
using namespace System;
using namespace System::Collections;
void EnumerateAndDisplay( String^ Operand )
{
   Console::WriteLine( "\nThe characters in the string \"{0}\" are:", Operand );
   IEnumerator^ OperandEnum = Operand->GetEnumerator();
   int CharCount = 0;
   while ( OperandEnum->MoveNext() )
   {
      CharCount++;
      Console::Write( " '{0}' ", OperandEnum->Current );
   }

   Console::WriteLine( "\n Character count: {0}", CharCount );
}

int main()
{
   Console::WriteLine( "This example of String::GetEnumerator( ) "
   "generates the following output." );
   EnumerateAndDisplay( "Test Case" );
   EnumerateAndDisplay( "Has\ttwo\ttabs" );
   EnumerateAndDisplay( "Two\nnew\nlines" );
}

/*
This example of String::GetEnumerator( ) generates the following output.

The characters in the string "Test Case" are:
 'T'  'e'  's'  't'  ' '  'C'  'a'  's'  'e'
 Character count: 9

The characters in the string "Has       two     tabs" are:
 'H'  'a'  's'  '       '  't'  'w'  'o'  '     '  't'  'a'  'b'  's'
 Character count: 12

The characters in the string "Two
new
lines" are:
 'T'  'w'  'o'  '
'  'n'  'e'  'w'  '
'  'l'  'i'  'n'  'e'  's'
 Character count: 13
*/
// Example for the String.GetEnumerator( ) method.
import System.*;
import System.Collections.*;

class GetEnumerator
{
    public static void main(String[] args)
    {
        Console.WriteLine(("This example of String.GetEnumerator( ) "
            + "generates the following output."));
        EnumerateAndDisplay("Test Case");
        EnumerateAndDisplay("Has\ttwo\ttabs");
        EnumerateAndDisplay("Two\nnew\nlines");
    } //main

    static void EnumerateAndDisplay(String operand)
    {
        Console.WriteLine("\nThe characters in the string \"{0}\" are:", 
            operand);
        IEnumerator operandEnum = operand.GetEnumerator();
        int charCount = 0;
        while(operandEnum.MoveNext()) {
            charCount++;
            Console.Write(" '{0}' ", operandEnum.get_Current());
        }
        Console.WriteLine("\n Character count: {0}", 
            String.valueOf(charCount));
    } //EnumerateAndDisplay
} //GetEnumerator

/*
This example of String.GetEnumerator( ) generates the following output.

The characters in the string "Test Case" are:
 'T'  'e'  's'  't'  ' '  'C'  'a'  's'  'e'
 Character count: 9

The characters in the string "Has       two     tabs" are:
 'H'  'a'  's'  '       '  't'  'w'  'o'  '     '  't'  'a'  'b'  's'
 Character count: 12

The characters in the string "Two
new
lines" are:
 'T'  'w'  'o'  '
'  'n'  'e'  'w'  '
'  'l'  'i'  'n'  'e'  's'
 Character count: 13
*/

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0

Siehe auch

Referenz

String-Klasse
String-Member
System-Namespace
IEnumerator
IEnumerable
Chars