code: @Override
      public int compareTo(CollationKey target)
      {
          for (int i = 0;; ++i) {
              int l = m_key_[i]&0xff;
              int r = target.m_key_[i]&0xff;
              if (l < r) {
              return -1;
              } else if (l > r) {
              return 1;
              } else if (l == 0) {
              return 0;
              }
          }
      }
docs: Compare this CollationKey to another CollationKey.  The
  collation rules of the Collator that created this key are
  applied.
  
  <p><strong>Note:</strong> Comparison between CollationKeys
  created by different Collators might return incorrect
  results.  See class documentation.
  
  @param target target CollationKey
  @return an integer value.  If the value is less than zero this CollationKey
  is less than than target, if the value is zero they are equal, and
  if the value is greater than zero this CollationKey is greater
  than target.
  @exception NullPointerException is thrown if argument is null.
  @see Collator#compare(String, String)