|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
public interface CharacterIterator
このインタフェースは、テキストにおける双方向の反復のプロトコルを定義します。反復子は、結合された文字シーケンスにおいて反復します。文字は、getBeginIndex() で返される値で始まり、getEndIndex()-1 で返される値まで続く値を使ってインデックス処理されます。
反復子は、有効範囲が getBeginIndex() 〜 getEndIndex() の現在の文字インデックスを維持します。値 getEndIndex() が含まれているのは、ゼロ長のテキスト範囲の操作を可能にするためと、歴史的な理由によります。現在のインデックスは、getIndex() を呼び出すことによって検索でき、setIndex()、first()、および last() を呼び出すことによって直接設定できます。
previous() メソッドと next() メソッドは繰り返し処理に使用されます。これらのメソッドは、getBeginIndex() 〜 getEndIndex() -1 の範囲から外れるように動くと、DONE を返すことにより、反復子がシーケンスの終わりに達したことを示します。また、ほかのメソッドから DONE が返された場合は、現在のインデックスがこの範囲外にあることを示します。
例:
テキストの始めから終わりの方向へたどります。
public void traverseForward(CharacterIterator iter) { for(char c = iter.first(); c != CharacterIterator.DONE; c = iter.next()) { processChar(c); } }テキストを終わりから始めの方向へ逆方向にたどります。
public void traverseBackward(CharacterIterator iter) { for(char c = iter.last(); c != CharacterIterator.DONE; c = iter.previous()) { processChar(c); } }指定されたテキストの位置から前方向と逆方向の両方へたどります。この例での notBoundary() の呼び出しは、その他の停止基準を表しています。
public void traverseOut(CharacterIterator iter, int pos) { for (char c = iter.setIndex(pos); c != CharacterIterator.DONE && notBoundary(c); c = iter.next()) { } int end = iter.getIndex(); for (char c = iter.setIndex(pos); c != CharacterIterator.DONE && notBoundary(c); c = iter.previous()) { } int start = iter.getIndex(); processSection(start, end); }
StringCharacterIterator
,
AttributedCharacterIterator
フィールドの概要 | |
---|---|
static char |
DONE
反復子がテキストの終わりか始めに達したときに返される定数です。 |
メソッドの概要 | |
---|---|
Object |
clone()
反復子のコピーを作成します。 |
char |
current()
現在位置 (getIndex() によって返される位置) にある文字を取得します。 |
char |
first()
位置を getBeginIndex() に設定して、その位置にある文字を返します。 |
int |
getBeginIndex()
テキストの開始インデックスを返します。 |
int |
getEndIndex()
テキストの終了インデックスを返します。 |
int |
getIndex()
現在のインデックスを返します。 |
char |
last()
位置を getEndIndex()-1 (テキストが空の場合は getEndIndex()) に設定して、その位置にある文字を返します。 |
char |
next()
反復子のインデックスを 1 増やし、新しいインデックスにある文字を返します。 |
char |
previous()
反復子のインデックスを 1 減らし、新しいインデックスにある文字を返します。 |
char |
setIndex(int position)
位置を指定されたテキストの位置に設定して、その文字を返します。 |
フィールドの詳細 |
---|
static final char DONE
メソッドの詳細 |
---|
char first()
getBeginIndex()
char last()
getEndIndex()
char current()
getIndex()
char next()
char previous()
char setIndex(int position)
position
- テスト内の位置。この値は、getBeginIndex() 〜 getEndIndex() の範囲内になければならない。無効な値を指定すると、IllegalArgumentException がスローされる
int getBeginIndex()
int getEndIndex()
int getIndex()
Object clone()
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。