Package com.complexible.common.util
Class AlphaNumericComparator<T>
java.lang.Object
com.complexible.common.util.AlphaNumericComparator<T>
- All Implemented Interfaces:
Comparator<T>
This is a comparator to perform a mix of alphabetical+numeric comparison. For
example, if there is a list {"test10", "test2", "test150", "test25", "test1"}
then what we generally expect from the ordering is the result {"test1",
"test2", "test10", "test25", "test150"}. However, standard lexigraphic
ordering does not do that and "test10" comes before "test2". This class is
provided to overcome that problem. This functionality is useful to sort the
benchmark files (like the ones in in DL-benchmark-suite) from smallest to the
largest. Comparisons are done on the String values returned by toString() so
care should be taken when this comparator is used to sort arbitrary Java
objects.
- Author:
- Evren Sirin
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final AlphaNumericComparator<Object> Deprecated.static final AlphaNumericComparator<Object> Deprecated.UsecaseSensitive()instead -
Method Summary
Modifier and TypeMethodDescriptionstatic <T> AlphaNumericComparator<T> static <T> AlphaNumericComparator<T> intstatic <T> AlphaNumericComparator<T> getInstance(boolean caseSensitive) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.util.Comparator
equals, reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
-
Field Details
-
CASE_SENSITIVE
Deprecated.UsecaseSensitive()insteadA static instantiation of a case sensitive AlphaNumericComparator -
CASE_INSENSITIVE
Deprecated.UsecaseInsensitive()insteadA static instantiation of a case insensitive AlphaNumericComparator
-
-
Method Details
-
caseSensitive
-
caseInsensitive
-
getInstance
-
compare
- Specified by:
comparein interfaceComparator<T>
-
caseInsensitive()instead