public class Sort extends java.lang.Object implements java.util.Comparator, java.lang.Cloneable, RMJSONArchiver.GetKeys
Sort titleFirst = new Sort("Title"); Sort bestRevenueFirst = new Sort("Revenue", ORDER_DESCEND);
This class also provides useful static methods for comparison and sorting:
Sort.sort(myList, "Title"); // Sort myList by its contents' getTitle method (alphabetically) Sort.sort(myList, bestRevenueFirst); // Sort myList by its contents' getRevenue method (largest first) List mySortList = new ArrayList(); mySortList.add(bestRevenueFirst); mySortList.add(titleFirst); Sort.sort(myList, mySortList); // Sort myList by revenue and title
Modifier and Type | Field and Description |
---|---|
static java.util.Comparator |
COMPARATOR |
static byte |
ORDER_ASCEND |
static byte |
ORDER_DESCEND |
static byte |
ORDER_SAME |
Constructor and Description |
---|
Sort()
Creates a plain sort with no key.
|
Sort(java.lang.String aKey)
Creates a sort with the given key and ORDER_ASCEND.
|
Sort(java.lang.String aKey,
int anOrder)
Creates a sort with the given key and order.
|
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
clone()
Standard clone implementation.
|
int |
compare(java.lang.Object obj1,
java.lang.Object obj2)
Returns how the two given objects compare with this sort.
|
static int |
Compare(java.lang.Object anObj1,
java.lang.Object anObj2)
Compare two value objects (assumed to be String, Number, Boolean, Date, Comparable, etc.).
|
boolean |
equals(java.lang.Object anObj)
Standard equals implementation.
|
java.util.List<java.lang.String> |
getJSONKeys()
RMJSONArchiver GetKeys method.
|
java.lang.String |
getKey()
Returns the key for this sort.
|
int |
getOrder()
Returns the order for this sort.
|
void |
setKey(java.lang.String aKey)
Sets the key for this sort.
|
void |
setOrder(int anOrder)
Sets the order for this sort.
|
static void |
sort(java.util.List aList,
java.util.List aSortList)
Returns the given list sorted by the given list of sorts.
|
static void |
sort(java.util.List aList,
Sort... theSorts)
Returns the given list sorted by the given sort.
|
static void |
sort(java.util.List aList,
Sort aSort)
Returns the given list sorted by the given sort.
|
static void |
sort(java.util.List aList,
java.lang.String... theKeys)
Returns the given list sorted by the given key.
|
static void |
sort(java.util.List aList,
java.lang.String aKey)
Returns the given list sorted by the given key.
|
static <T extends java.lang.Comparable<? super T>> |
sortedList(java.util.Collection<T> aCollection)
Returns a new sorted list from given collection.
|
static <T> java.util.List<T> |
sortedList(java.util.Collection<T> aCollection,
java.lang.String... theKeys)
Returns a new list from the given list sorted by the given key.
|
static <T> java.util.List<T> |
sortedList(java.util.Collection<T> aCollection,
java.lang.String aKey)
Returns a new list from the given list sorted by the given key.
|
void |
toggleOrder()
Toggles the order for this sort between ORDER_ASCEND<->ORDER_DESCEND.
|
java.lang.String |
toString()
Returns a string representation of sort (just the sort key).
|
public static final byte ORDER_SAME
public static final byte ORDER_ASCEND
public static final byte ORDER_DESCEND
public static java.util.Comparator COMPARATOR
public Sort()
public Sort(java.lang.String aKey)
public Sort(java.lang.String aKey, int anOrder)
public java.lang.String getKey()
public void setKey(java.lang.String aKey)
public int getOrder()
public void setOrder(int anOrder)
public void toggleOrder()
public int compare(java.lang.Object obj1, java.lang.Object obj2)
compare
in interface java.util.Comparator
public static int Compare(java.lang.Object anObj1, java.lang.Object anObj2)
public static void sort(java.util.List aList, java.lang.String aKey)
public static void sort(java.util.List aList, Sort aSort)
public static void sort(java.util.List aList, java.lang.String... theKeys)
public static void sort(java.util.List aList, Sort... theSorts)
public static void sort(java.util.List aList, java.util.List aSortList)
public static <T extends java.lang.Comparable<? super T>> java.util.List<T> sortedList(java.util.Collection<T> aCollection)
public static <T> java.util.List<T> sortedList(java.util.Collection<T> aCollection, java.lang.String aKey)
public static <T> java.util.List<T> sortedList(java.util.Collection<T> aCollection, java.lang.String... theKeys)
public java.lang.Object clone()
clone
in class java.lang.Object
public java.util.List<java.lang.String> getJSONKeys()
getJSONKeys
in interface RMJSONArchiver.GetKeys
public boolean equals(java.lang.Object anObj)
equals
in interface java.util.Comparator
equals
in class java.lang.Object
public java.lang.String toString()
toString
in class java.lang.Object