全パッケージ クラス階層 このパッケージ 前項目 次項目 インデックス
インタフェース java.text.CharacterIterator
- public interface CharacterIterator
- extends Cloneable
このインタフェースは、テキストにおける双方向の反復のプロトコルを定義します。反復子は、結合された文字シーケンスにおいて反復します。文字は、getBeginIndexで返される値で始まり、getEndIndex()-1で返される値まで続く値を使ってインデックスされます。現在の文字のインデックスは、getIndexを呼び出せば取り出せます。setIndexを呼び出すと、反復子は文字シーケンス内の新しい位置に移動します。反復子の現在のインデックスが getBeginIndexと getEndIndexの範囲外に移動すると、previous()と next()では 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.prev()) {
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.prev()) {}
int start = iter.getIndex();
processSection(start,end);
}
- 参照:
- StringCharacterIterator
-
DONE
- 反復子がテキストの終わりか始めに達したときに返される定数です。
-
clone()
- この反復子のコピーを作成します。
-
current()
- (getIndex()によって返される現在位置にある文字を入手します。)
-
first()
- 位置を getBeginIndex()にして、その位置にある文字を返します。
-
getBeginIndex()
- テキストの開始インデックスを返します。
-
getEndIndex()
- テキストの終了インデックスを返します。
-
getIndex()
- 現在のインデックスを返します。
-
last()
- 位置を getEndIndex()-1にして、その位置にある文字を返します。
-
next()
- 反復子のインデックスを 1増やし、新しいインデックスにある文字を返します。
-
previous()
- 反復子のインデックスを 1減らし、新しいインデックスにある文字を返します。
-
setIndex(int)
- 位置を指定するテキストの位置にして、その文字を返します。
DONE
public static final char DONE
- 反復子がテキストの終わりか始めに達したときに返される定数です。標準UNICODE 2.0によると、'\\uFFFF'は無効なUNICODE値であり、有効なUNICODE文字列で使用することはできません。
first
public abstract char first()
- 位置を getBeginIndex()にして、その位置にある文字を返します。
- 返り値:
- テキストにおける最初の文字
- 参照:
- getBeginIndex
last
public abstract char last()
- 位置を getEndIndex()-1にして、その位置にある文字を返します。
- 返り値:
- テキストにおける最後の文字
- 参照:
- getEndIndex
current
public abstract char current()
- (getIndex()によって返される現在位置にある文字を入手します。)
- 返り値:
- 現在位置にある文字、または現在位置がテキストの終わりを過ぎている場合には DONEが返される。
- 参照:
- getIndex
next
public abstract char next()
- 反復子のインデックスを 1増やし、新しいインデックスにある文字を返します。結果のインデックスが getEndIndex()より大きいか、それに等しいと、現在のインデックスが getEndIndex()にリセットされ、値 DONEが返されます。
- 返り値:
- 新しい位置にある文字、または現在位置がテキストの終わりを過ぎている場合には DONEが返される。
previous
public abstract char previous()
- 反復子のインデックスを 1減らし、新しいインデックスにある文字を返します。結果のインデックスが getBeginIndex()より小さいと、現在のインデックスが getBeginIndex()にリセットされ、値 DONEが返されます。
- 返り値:
- 新しい位置にある文字、または現在位置がテキストの終わりを過ぎている場合には DONEが返される。
setIndex
public abstract char setIndex(int position)
- 位置を指定するテキストの位置にして、その文字を返します。
- パラメータ:
- position - テキスト内の位置。この値は、getBeginIndex()から getEndIndex() - 1でなければなりませんい。無効な値を指定すると、IllegalArgumentExceptionがスローされます。
- 返り値:
- 指定する位置にある文字
getBeginIndex
public abstract int getBeginIndex()
- テキストの開始インデックスを返します。
- 返り値:
- テキストが始まる位置のインデックス
getEndIndex
public abstract int getEndIndex()
- テキストの終了インデックスを返します。このインデックスは、テキストの終わりの次の文字のインデックスです。
- 返り値:
- テキストが終わる位置のインデックス
getIndex
public abstract int getIndex()
- 現在のインデックスを返します。
- 返り値:
- 現在のインデックス
clone
public abstract Object clone()
- この反復子のコピーを作成します。
- 返り値:
- これのコピー
- オーバーライド:
- クラス Objectの clone
全パッケージ クラス階層 このパッケージ 前項目 次項目 インデックス