java.lang.Object | +----java.text.CollationElementIterator
CollationElementIterator 类是用于浏览国际字符串中的每个字符的迭代器。使用迭代器返回定位字符的排序优先级。我们把字符的排序优先级看做一个关键字,定义了在给定的 collation 对象中如何整理字符。
例如,见下面的西班牙文的一个例子:
"ca" -> 第一个关键字是键 ('c') 和第二个关键字是键 ('a')。
"cha" -> 第一个关键字是键 ('ch') 和第二个关键字是键 ('a')。
德文的例子,
"aeb"-> 第一个关键字是键 ('a') 和第二个关键字是键 ('e'),
第三个关键字是键 ('b')。
字符的关键字是由主次序 (short)、第二级次序 (byte) 和第三级次序 (byte) 组成的一个整型数。
Java 严格定义了它的原始数据类型的大小和符号。因此,静态的函数 primaryOrder、secondaryOrder 和 tertiaryOrder 返回 int、short 和 short 来确保各自的关键字的正确性。
迭代器用法的例子,
// 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 位是第三级顺序。
public static final int NULLORDER
public void reset()
public int next()
public static final int primaryOrder(int order)
public static final short secondaryOrder(int order)
public static final short tertiaryOrder(int order)