|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object java.text.CollationKey
public final class CollationKey
CollationKey
表示遵守特定 Collator
对象规则的 String
。比较两个 CollationKey
将返回它们所表示的 String
的相对顺序。使用 CollationKey
来比较 String
通常比使用 Collator.compare
更快。因此,当必须多次比较 String
时(例如,对一个 String
列表进行排序),使用 CollationKey
会更高效。
不能直接创建 CollationKey
。而是通过调用 Collator.getCollationKey
来生成。只能比较同一个 Collator
对象生成的 CollationKey
。
为一个 String
生成 CollationKey
涉及到检查整个 String
,并将它转换成可以按位比较的一系列位。一旦生成了键,就允许进行快速比较。当 String
需要多次比较时,以更快速的比较方式生成键的成本可以忽略不计。另一方面,比较的结果通常由每个 String
的第一对字符确定。Collator.compare
只检查实际需要比较的字符,当进行单次比较时,此比较方式更快。
以下例子显示如何使用 CollationKey
对一个 String
列表进行排序。
// Create an array of CollationKeys for the Strings to be sorted. Collator myCollator = Collator.getInstance(); CollationKey[] keys = new CollationKey[3]; keys[0] = myCollator.getCollationKey("Tom"); keys[1] = myCollator.getCollationKey("Dick"); keys[2] = myCollator.getCollationKey("Harry"); sort( keys );
//...
// Inside body of sort routine, compare keys this way if( keys[i].compareTo( keys[j] ) > 0 ) // swap keys[i] and keys[j]
//...
// Finally, when we've returned from sort. System.out.println( keys[0].getSourceString() ); System.out.println( keys[1].getSourceString() ); System.out.println( keys[2].getSourceString() );
Collator
,
RuleBasedCollator
方法摘要 | |
---|---|
int |
compareTo(CollationKey target)
比较此 CollationKey 与目标 CollationKey。 |
boolean |
equals(Object target)
比较此 CollationKey 与目标 CollationKey 的相等性。 |
String |
getSourceString()
返回此 CollationKey 表示的 String。 |
int |
hashCode()
创建此 CollationKey 的哈希码。 |
byte[] |
toByteArray()
将 CollationKey 转换成位序列。 |
从类 java.lang.Object 继承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
方法详细信息 |
---|
public int compareTo(CollationKey target)
Comparable<CollationKey>
中的 compareTo
target
- 目标 CollationKey
Collator.compare(java.lang.String, java.lang.String)
public boolean equals(Object target)
Object
中的 equals
target
- 要比较的 CollationKey。
Object.hashCode()
,
Hashtable
public int hashCode()
Object
中的 hashCode
Object.equals(java.lang.Object)
,
Hashtable
public String getSourceString()
public byte[] toByteArray()
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。