primaryOrder
- パラメータ:
order- 照合要- 戻り値:
- 要 の第1成分
CollationElementIteratorクラスは、多国語文字列の各文字を処理するときのイテレータとして使われます。 イテレータは、位置付けされた文字の 序の優先 位を返すのに使用されます。 序の優先 位(キーと呼ぶ)は、指定された照合オブジェクトにおいて、ある文字がどのように照合されるかを定義するものです。
たとえば、スペイン語の例を考えます:
"ca" → the first key is key('c') and second key is key('a').
"cha" → the first key is key('ch') and second key is key('a').
さらに、ドイツ語の例を示します。
"äb" → the first key is key('a'), the second key is key('e'), and
the third key is key('b').
文字のキーは、第1 序(short)、第2 序(byte)、第3 序(byte)からなる整数です。 Javaでは、その基本データ型のサイズと符号の有無が厳密に定義されます。 したがって、static関数primaryOrder、secondaryOrder、tertiaryOrderは、キー値の正確性を確保するために、それぞれint、short、shortを返します。
イテレータの使用例
String testString = "This is a test"; Collator col = Collator.getInstance(); if (col instanceof RuleBasedCollator ruleBasedCollator) { CollationElementIterator collationElementIterator = ruleBasedCollator.getCollationElementIterator(testString); int primaryOrder = CollationElementIterator.primaryOrder(collationElementIterator.next()); â® }
CollationElementIterator.nextは、次の文字の照合 序を返します。 照合 序は、第1 序、第2 序、第3 序からなります。 照合 序のデータ型はintです。 照合 序の最初の16ビットがその第1 序、次の8ビットが第2 序、最後の8ビットが第3 序です。
ノート: CollationElementIteratorはRuleBasedCollator実装の一部です。 RuleBasedCollatorインスタンスとともにしか使用できません。
intgetMaxExpansion(int order) intintnext()intprevious()static final intprimaryOrder(int order) voidreset()static final shortsecondaryOrder(int order) voidsetOffset(int newOffset) voidvoidsetText(CharacterIterator source) static final shorttertiaryOrder(int order) このイテレータは、その文字列で作成された照合要 のシーケンス対して繰返し処理を実行します。 文字から照合要 への1対1のマッピングが必ずしも存在しないため、これは、「文字列の次の文字の照合要 [ 序の優先 位]を返す」こととは異なります。
この関数は、イテレータが現在示している照合要 を返してから、内部ポインタを更新して次の要 を示します。それに対して、previous()は最初にポインタを更新してから要 を返します。 これは、繰返し処理中に方向を変更する 合(つまり、next()を呼び出してからprevious()を呼び出すか、previous()を呼び出してからnext()を呼び出す)、同じ要 を2回戻すことを意味します。
このイテレータは、その文字列で作成された照合要 のシーケンス対して繰返し処理を実行します。 文字から照合要 への1対1のマッピングが必ずしも存在しないため、これは、「文字列の1つ前の文字の照合要 [ 序の優先 位]を返す」こととは異なります。
この関数は、イテレータの内部ポインタを更新して現在示している照合要 の前の照合要 を示してから、要 を返します。それに対して、next()は現在の要 を返してからポインタを更新します。 これは、繰返し処理中に方向を変更する 合(つまり、next()を呼び出してからprevious()を呼び出すか、previous()を呼び出してからnext()を呼び出す)、同じ要 を2回戻すことを意味します。
order - 照合要 order - 照合要 order - 照合要 newOffset - 元のテキストへの新しい文字オフセット。order - previousまたはnextが返す照合 序。source - 新しいソース・テキストsource - 新しいソース・テキスト。