|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object java.text.CollationElementIterator
public final class CollationElementIterator
CollationElementIterator
類別用作一個迭代器,以遍歷國際化字元串的每個字元。使用該迭代器返回所定位字元的排序優先級。我們所指的字元排序優先級,是指在給定 collation 物件中定義字元排序方式的一個鍵。
例如,在西班牙語中考慮以下字元串:
在德語中,考慮以下字元串:"ca" -> 第一個鍵是鍵 ('c'),而第二個鍵是鍵 ('a')。 "cha" -> 第一個鍵是鍵 ('ch'),而第二個鍵是鍵 ('a')。
字元的鍵是由主順序(short)、第二順序(byte)和第三順序(byte)組成的一個整數。Java 嚴格定義了其基本資料型別的大小和符號。因此,static 函數"?b" -> 第一個鍵是鍵 ('a'),第二個鍵是鍵 ('e'), 第三個鍵是鍵 ('b')。
primaryOrder
、secondaryOrder
和 tertiaryOrder
分別返回 int
、short
和 short
,以確保鍵值的正確性。
以下是使用迭代器的例子:
String testString = "This is a test"; RuleBasedCollator ruleBasedCollator = (RuleBasedCollator)Collator.getInstance(); CollationElementIterator collationElementIterator = ruleBasedCollator.getCollationElementIterator(testString); int primaryOrder = CollationElementIterator.primaryOrder(collationElementIterator.next());
CollationElementIterator.next
返回下一個字元的 collation 順序。collation 順序由主順序、第二順序和第三順序組成。collation 順序的資料型別是 int。collation 順序的前 16 位是它的主順序,接下來 8 位是第二順序,最後 8 位是第三順序。
Collator
,
RuleBasedCollator
欄位摘要 | |
---|---|
static int |
NULLORDER
Null 順序指示鼠標到達字元串末尾。 |
方法摘要 | |
---|---|
int |
getMaxExpansion(int order)
返回以指定比較順序結束的所有擴展序列的最大長度。 |
int |
getOffset()
返回源文本中對應於下一個 collation 元素的字元偏移量。 |
int |
next()
獲取字元串中的下一個 collation 元素。 |
int |
previous()
獲取字元串中前一個 collation 元素。 |
static int |
primaryOrder(int order)
返回 collation 元素的主順序。 |
void |
reset()
將鼠標重置於字元串開始處。 |
static short |
secondaryOrder(int order)
返回 collation 元素的第二順序。 |
void |
setOffset(int newOffset)
將迭代器設置為指向對應於指定字元的 collation 元素(參數是源字元串中的一個 CHARACTER 偏移量,而不是其對應 collation 元素序列的偏移量)。 |
void |
setText(CharacterIterator source)
設置一個要迭代的新字元串。 |
void |
setText(String source)
設置一個要迭代的新字元串。 |
static short |
tertiaryOrder(int order)
返回 collation 元素的第三順序。 |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
欄位詳細資訊 |
---|
public static final int NULLORDER
方法詳細資訊 |
---|
public void reset()
public int next()
此迭代器對建構於字元串的 collation 元素序列進行迭代。因為從字元到 collation 元素不一定存在一一映射關係,因此這與“返回字元串中下一個字元的 collation 元素(或排序優先級)”意義不同。
此函數返回迭代器當前指向的 collation 元素,然後將內部指針更新為指向下一個元素。previous() 則首先更新指針,然後再返回元素。這意味著,如果您在進行迭代時改變方向(例如,調用 next(),然後調用 previous(),或者調用 previous(),然後調用 next()),將兩次獲取同一個元素。
public int previous()
此迭代器對建構於字元串的 collation 元素序列進行迭代。因為從字元到 collation 元素不一定存在一一映射關係,因此這與“返回字元串中前一個字元的 collation 元素(或排序優先級)”意義不同。
此函數將迭代器的內部指針更新為指向它當前指向的 collation 元素的前一個元素,然後返回該元素;而 next() 則先返回當前元素,然後更新指針。這意味著,如果您在進行迭代時改變方向(例如,調用 next(),然後調用 previous(),或者調用 previous(),然後調用 next()),將兩次獲取同一個元素。
public static final int primaryOrder(int order)
order
- collation 元素
public static final short secondaryOrder(int order)
order
- collation 元素
public static final short tertiaryOrder(int order)
order
- collation 元素
public void setOffset(int newOffset)
newOffset
- 源文本中新的字元偏移量。public int getOffset()
public int getMaxExpansion(int order)
order
- 由 previous 或 next 返回的 collation 順序。
public void setText(String source)
source
- 新的源文本public void setText(CharacterIterator source)
source
- 新的源文本。
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。