## com.icl.saxon.sort
Class StringComparer

    java.lang.Object
      com.icl.saxon.sort.Comparer
          com.icl.saxon.sort.TextComparer
              com.icl.saxon.sort.StringComparer

public class StringComparer
extends TextComparer

A Comparer used for comparing keys. This comparer uses the binary Unicode value of the characters.

Field Summary

Fields inherited from class com.icl.saxon.sort.TextComparer
`DEFAULT_CASE_ORDER, LOWERCASE_FIRST, UPPERCASE_FIRST`

Constructor Summary
`StringComparer()`

Method Summary
`int` `compare(java.lang.Object a, java.lang.Object b)` Compare two string objects using default collating
`Comparer` `setCaseOrder(int caseOrder)` Set case order

Methods inherited from class com.icl.saxon.sort.Comparer
`setDataType, setOrder`

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

Constructor Detail

### StringComparer

    public StringComparer()

Method Detail

### compare

    public int compare(java.lang.Object a,
                       java.lang.Object b)

  Compare two string objects using default collating

  Specified by:
    `compare` in class `Comparer`
  Returns:
    <0 if a<b, 0 if a=b, >0 if a>b
  Throws:
    `java.lang.ClassCastException` - if the objects are of the wrong type for this Comparer

### setCaseOrder

    public Comparer setCaseOrder(int caseOrder)

  Set case order

  Overrides:
    `setCaseOrder` in class `TextComparer`
  Parameters:
    `caseOrder` - one of DEFAULT_CASE_ORDER, LOWERCASE_FIRST, or UPPERCASE_FIRST. Indicates whether upper case letters precede or follow lower case letters in the ordering
  Returns:
    either this or a different Comparer that will be used to perform the comparisons. This allows the TextComparer to delegate the comparison to a Comparer dedicated to a specific case order.