Class LowercaseFirstCollator

java.lang.Object
net.sf.saxon.sort.LowercaseFirstCollator
All Implemented Interfaces:
Serializable, StringCollator

public class LowercaseFirstCollator extends Object implements StringCollator, Serializable
A StringCollator that sorts lowercase before uppercase.

Case is irrelevant, unless the strings are equal ignoring case, in which case lowercase comes first.

Author:
Michael H. Kay
See Also:
  • Constructor Details

    • LowercaseFirstCollator

      public LowercaseFirstCollator(StringCollator base)
      Create a LowercaseFirstCollator
      Parameters:
      base - the base collator, which determines how characters are sorted irrespective of case
  • Method Details

    • compareStrings

      public int compareStrings(String a, String b)
      Compare two string objects: case is irrelevant, unless the strings are equal ignoring case, in which case lowercase comes first.
      Specified by:
      compareStrings in interface StringCollator
      Parameters:
      a - the first string
      b - the second string
      Returns:
      invalid input: '<'0 if ainvalid input: '<'b, 0 if a=b, >0 if a>b
      Throws:
      ClassCastException - if the objects are of the wrong type for this Comparer
    • getCollationKey

      public Object getCollationKey(String s)
      Get a collation key for two Strings. The essential property of collation keys is that if two values are equal under the collation, then the collation keys are compare correctly under the equals() method.
      Specified by:
      getCollationKey in interface StringCollator
      Parameters:
      s - the string whose collation key is required
      Returns:
      the collation key