public class HumanComparator extends java.lang.Object implements java.util.Comparator<java.lang.String>
CollatedHumanComparator. Pretty efficient but still slower than
String.compareTo().| Modifier and Type | Class and Description |
|---|---|
static class |
HumanComparator.CharType |
| Modifier and Type | Field and Description |
|---|---|
static java.util.Comparator<java.lang.String> |
DEFAULT_HUMAN_COMPARATOR |
| Constructor and Description |
|---|
HumanComparator()
Default constructor which does nothing.
|
HumanComparator(HumanComparator.CharType[] sortOrder)
Constructor specifying all the character type order.
|
| Modifier and Type | Method and Description |
|---|---|
int |
compare(java.lang.String str1,
java.lang.String str2) |
static java.util.Comparator<java.lang.String> |
getInstance()
Returns a singleton comparator that implements the default behaviour.
|
HumanComparator.CharType[] |
getSortOrder() |
void |
setSortOrder(HumanComparator.CharType[] sortOrder)
Set the order in which letters, numbers and everything else is presented.
|
public static final java.util.Comparator<java.lang.String> DEFAULT_HUMAN_COMPARATOR
public HumanComparator()
public HumanComparator(HumanComparator.CharType[] sortOrder)
sortOrder - see setSortOrderpublic static java.util.Comparator<java.lang.String> getInstance()
public int compare(java.lang.String str1, java.lang.String str2)
compare in interface java.util.Comparator<java.lang.String>public HumanComparator.CharType[] getSortOrder()
public void setSortOrder(HumanComparator.CharType[] sortOrder)
sortOrder - Must be an array of CharType containing
exactly 3 elements each of which must be distinct.java.lang.IllegalArgumentException - if being called on the result of
HumanStringComparator.getInstance() or
sortOrder is not exactly 3 different
CharType.Copyright (c) 2001-2022 The Apache Software Foundation. All rights reserved.