## net.sf.saxon.sort
Class UppercaseFirstComparer

    java.lang.Object
      net.sf.saxon.sort.UppercaseFirstComparer

All Implemented Interfaces:
  Serializable, StringCollator

    public class UppercaseFirstComparer

extends Object
implements StringCollator, Serializable

A Comparer used for comparing strings, with upper case collated before lower case if the strings are otherwise equal. This is implemented as a wrapper around a collator that compares the strings ignoring case.

Author:
  Michael H. Kay
See Also:
  Serialized Form

Constructor Summary
`UppercaseFirstComparer(StringCollator base)`

Method Summary
`int` `compareStrings(String a, String b)` Compare two string objects: case is irrelevant, unless the strings are equal ignoring case, in which case uppercase comes first.
`Object` `getCollationKey(String s, Platform platform)` Get a collation key for two Strings.

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### UppercaseFirstComparer

    public UppercaseFirstComparer(StringCollator base)

Method Detail

### 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 uppercase comes first.

  Specified by:
    `compareStrings` in interface `StringCollator`
  Parameters:
    `a` - the first string
    `b` - the second string
  Returns:
    <0 if a<b, 0 if a=b, >0 if a>b
  Throws:
    `ClassCastException` - if the objects do not implement the CharSequence interface

### getCollationKey

    public Object getCollationKey(String s,
                                  Platform platform)

  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`

Copyright (C) Michael H. Kay. All rights reserved.