public abstract class CollationKey extends Object implements Comparable<CollationKey>
Stringunder the rules of a specific
Collatorobject. Comparing two
CollationKeys returns the relative order of the
Strings they represent. Using
CollationKeys to compare
Strings is generally faster than using
Collator.compare. Thus, when the
Strings must be compared multiple times, for example when sorting a list of
Strings. It's more efficient to use
You can not create
CollationKeys directly. Rather,
generate them by calling
You can only compare
CollationKeys generated from
CollationKey for a
involves examining the entire
and converting it to series of bits that can be compared bitwise. This
allows fast comparisons once the keys are generated. The cost of generating
keys is recouped in faster comparisons when
to be compared many times. On the other hand, the result of a comparison
is often determined by the first couple of characters of each
Collator.compare examines only as many characters as it needs which
allows it to be faster when doing single comparisons.
The following example shows how
CollationKeys might be used
to sort a list of
// Create an array of CollationKeys for the Strings to be sorted. Collator myCollator = Collator.getInstance(); CollationKey keys = new CollationKey; keys = myCollator.getCollationKey("Tom"); keys = myCollator.getCollationKey("Dick"); keys = 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.getSourceString()); System.out.println(keys.getSourceString()); System.out.println(keys.getSourceString());
|Modifier and Type||Method||Description|
Compare this CollationKey to the target CollationKey.
Returns the String that this CollationKey represents.
Converts the CollationKey to a sequence of bits.
public abstract int compareTo(CollationKey target)
target- target CollationKey
public String getSourceString()
public abstract byte toByteArray()
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2017, Oracle and/or its affiliates. 500 Oracle Parkway
Redwood Shores, CA 94065 USA. All rights reserved.