次の方法で共有


CharEnumerator クラス

String の反復処理と個別の文字の読み取りをサポートします。

この型のすべてのメンバの一覧については、CharEnumerator メンバ を参照してください。

System.Object
   System.CharEnumerator

<Serializable>
NotInheritable Public Class CharEnumerator   Implements IEnumerator, ICloneable
[C#]
[Serializable]
public sealed class CharEnumerator : IEnumerator, ICloneable
[C++]
[Serializable]
public __gc __sealed class CharEnumerator : public IEnumerator,   ICloneable
[JScript]
public
   Serializable
class CharEnumerator implements IEnumerator, ICloneable

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

CharEnumerator は、参照先 String オブジェクトへの読み取り専用のアクセスを提供します。たとえば、Microsoft Visual Basic および C# プログラミング言語の foreach ステートメント (コレクションの要素を反復する) は、 String のインスタンスから CharEnumerator を取得して、そのインスタンスの文字を反復します。

CharEnumerator にはパブリック コンストラクタはありません。代わりに、 String オブジェクトの GetEnumerator メソッドを呼び出して、その文字列を参照するように初期化された CharEnumerator を取得します。

CharEnumerator は、 CharEnumerator が参照する文字列内の文字への内部インデックスを保持しています。インデックスが、文字列の先頭文字の前の位置または文字列の末尾の文字の後ろの位置を論理的に参照している場合は無効、文字列内の文字を参照している場合は有効です。インデックスは、先頭文字の前の位置で論理的に初期化され、反復が完了した時点で末尾の文字の後の位置に設定されます。インデックスが無効なときに文字にアクセスしようとすると、例外がスローされます。

MoveNext メソッドはインデックスを 1 インクリメントするため、先頭文字の次にその後続文字がアクセスされます。 Reset メソッドは、インデックスを先頭文字の前の位置に論理的に設定します。 Current プロパティは、インデックスが現在参照している文字を取得します。 Clone メソッドは、 CharEnumerator のコピーを作成します。

メモ   1 つ以上のスレッドの CharEnumerator の複数のインスタンスから、 String の 1 つのインスタンスにアクセスできます。このクラスは IEnumerator インターフェイスをサポートするために実装します。列挙子の使用方法の詳細については、 IEnumerator のトピックを参照してください。

必要条件

名前空間: System

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

アセンブリ: Mscorlib (Mscorlib.dll 内)

参照

CharEnumerator メンバ | System 名前空間 | String | IEnumerator | IEnumerable | ICollection