当前位置 类层次(JDK) 所有类 (JDK) 所有域和方法 (JDK)

类 java.text.CollationElementIterator

java.lang.Object
   |
   +----java.text.CollationElementIterator

public final class CollationElementIterator
extends Object

CollationElementIterator 类是用于浏览国际字符串中的每个字符的迭代器。使用迭代器返回定位字符的排序优先级。我们把字符的排序优先级看做一个关键字,定义了在给定的 collation 对象中如何整理字符。

例如,见下面的西班牙文的一个例子:

 "ca" -> 第一个关键字是键 ('c') 和第二个关键字是键 ('a')。
 "cha" -> 第一个关键字是键 ('ch') 和第二个关键字是键 ('a')。
 
德文的例子,
 "aeb"-> 第一个关键字是键 ('a') 和第二个关键字是键 ('e'),
第三个关键字是键 ('b')。
 
字符的关键字是由主次序 (short)、第二级次序 (byte) 和第三级次序 (byte) 组成的一个整型数。 Java 严格定义了它的原始数据类型的大小和符号。因此,静态的函数 primaryOrdersecondaryOrdertertiaryOrder 返回 intshortshort 来确保各自的关键字的正确性。

迭代器用法的例子,

 // get the first key of the string
 String str = "This is a test";
 CollationElementIterator c =
     new CollationElementIterator(str, 0, str.length(),
                                  Collator.getInstance());
 int primaryOrder = CollationElementIterator.primaryOrder(c->next());
 

CollationElementIterator.next 返回下一个字符的整理顺序。整理顺序有主顺序、次顺序和第三级顺序组成。整理顺序的数据类型是 int。整理顺序的头 16 位是主顺序;下一个 8 位是 次顺序;再下一个 8 位是第三级顺序。

参见:
Collator, RuleBasedCollator

变量索引

NULLORDER
Null order 指示游标已经到达字符串结尾。

方法索引

next()
获取该字符串中的下一个字符的排序优先级。
primaryOrder(int)
获取整理顺序的主顺序。
reset()
把游标复位到字符串的开始。
secondaryOrder(int)
获取整理顺序的次顺序。
tertiaryOrder(int)
获取整理顺序的第三级顺序。

变量

NULLORDER
 public static final int NULLORDER
Null order 指示游标已经到达字符串结尾。


方法

reset
 public void reset()
把游标复位到字符串的开始。

next
 public int next()
获取该字符串中的下一个字符的排序优先级。

返回值:
下一个字符串的排序。如果到达字符串的结尾返回 NULLORDER 。
primaryOrder
 public static final int primaryOrder(int order)
获取整理顺序的主顺序。

参数:
order - 整理顺序
返回值:
整理顺序的主顺序。
secondaryOrder
 public static final short secondaryOrder(int order)
获取整理顺序的次顺序。

参数:
order - 整理顺序
返回值:
整理顺序的次顺序。
tertiaryOrder
 public static final short tertiaryOrder(int order)
获取整理顺序的第三级顺序。

参数:
order - 整理顺序
返回值:
整理顺序的第三级顺序。

当前位置 类层次(JDK) 所有类 (JDK) 所有域和方法 (JDK)