public class

ComparatorUtils

extends Object
java.lang.Object
   ↳ org.apache.commons.collections.ComparatorUtils

Class Overview

Provides convenient static utility methods for Comparator objects.

Most of the functionality in this class can also be found in the comparators package. This class merely provides a convenient central place if you have use for more than one class in the comparators subpackage.

Summary

Fields
public static final Comparator NATURAL_COMPARATOR Comparator for natural sort order.
Public Constructors
ComparatorUtils()
ComparatorUtils should not normally be instantiated.
Public Methods
static Comparator booleanComparator(boolean trueFirst)
Gets a Comparator that can sort Boolean objects.
static Comparator chainedComparator(Comparator comparator1, Comparator comparator2)
Gets a comparator that compares using two Comparators.
static Comparator chainedComparator(Collection comparators)
Gets a comparator that compares using a collection of Comparators, applied in (default iterator) sequence until one returns not equal or the collection is exhausted.
static Comparator chainedComparator(Comparator[] comparators)
Gets a comparator that compares using an array of Comparators, applied in sequence until one returns not equal or the array is exhausted.
static Object max(Object o1, Object o2, Comparator comparator)
Returns the larger of the given objects according to the given comparator, returning the second object if the comparator returns equal.
static Object min(Object o1, Object o2, Comparator comparator)
Returns the smaller of the given objects according to the given comparator, returning the second object if the comparator returns equal.
static Comparator naturalComparator()
Gets a comparator that uses the natural order of the objects.
static Comparator nullHighComparator(Comparator comparator)
Gets a Comparator that controls the comparison of null values.
static Comparator nullLowComparator(Comparator comparator)
Gets a Comparator that controls the comparison of null values.
static Comparator reversedComparator(Comparator comparator)
Gets a comparator that reverses the order of the given comparator.
static Comparator transformedComparator(Comparator comparator, Transformer transformer)
Gets a Comparator that passes transformed objects to the given comparator.
[Expand]
Inherited Methods
From class java.lang.Object

Fields

public static final Comparator NATURAL_COMPARATOR

Comparator for natural sort order.

See Also

Public Constructors

public ComparatorUtils ()

ComparatorUtils should not normally be instantiated.

Public Methods

public static Comparator booleanComparator (boolean trueFirst)

Gets a Comparator that can sort Boolean objects.

The parameter specifies whether true or false is sorted first.

The comparator throws NullPointerException if a null value is compared.

Parameters
trueFirst when true, sort true Booleans before false Booleans.
Returns
  • a comparator that sorts booleans

public static Comparator chainedComparator (Comparator comparator1, Comparator comparator2)

Gets a comparator that compares using two Comparators.

The second comparator is used if the first comparator returns equal.

Parameters
comparator1 the first comparator to use, not null
comparator2 the first comparator to use, not null
Returns
Throws
NullPointerException if either comparator is null
See Also

public static Comparator chainedComparator (Collection comparators)

Gets a comparator that compares using a collection of Comparators, applied in (default iterator) sequence until one returns not equal or the collection is exhausted.

Parameters
comparators the comparators to use, not null or empty or containing nulls
Returns
Throws
NullPointerException if comparators collection is null or contains a null
ClassCastException if the comparators collection contains the wrong object type
See Also

public static Comparator chainedComparator (Comparator[] comparators)

Gets a comparator that compares using an array of Comparators, applied in sequence until one returns not equal or the array is exhausted.

Parameters
comparators the comparators to use, not null or empty or containing nulls
Returns
Throws
NullPointerException if comparators array is null or contains a null
See Also

public static Object max (Object o1, Object o2, Comparator comparator)

Returns the larger of the given objects according to the given comparator, returning the second object if the comparator returns equal.

Parameters
o1 the first object to compare
o2 the second object to compare
comparator the sort order to use
Returns
  • the larger of the two objects

public static Object min (Object o1, Object o2, Comparator comparator)

Returns the smaller of the given objects according to the given comparator, returning the second object if the comparator returns equal.

Parameters
o1 the first object to compare
o2 the second object to compare
comparator the sort order to use
Returns
  • the smaller of the two objects

public static Comparator naturalComparator ()

Gets a comparator that uses the natural order of the objects.

Returns
  • a comparator which uses natural order

public static Comparator nullHighComparator (Comparator comparator)

Gets a Comparator that controls the comparison of null values.

The returned comparator will consider a null value to be greater than any nonnull value, and equal to any other null value. Two nonnull values will be evaluated with the given comparator.

Parameters
comparator the comparator that wants to allow nulls
Returns
  • a version of that comparator that allows nulls
See Also

public static Comparator nullLowComparator (Comparator comparator)

Gets a Comparator that controls the comparison of null values.

The returned comparator will consider a null value to be less than any nonnull value, and equal to any other null value. Two nonnull values will be evaluated with the given comparator.

Parameters
comparator the comparator that wants to allow nulls
Returns
  • a version of that comparator that allows nulls
See Also

public static Comparator reversedComparator (Comparator comparator)

Gets a comparator that reverses the order of the given comparator.

Parameters
comparator the comparator to reverse
Returns
  • a comparator that reverses the order of the input comparator

public static Comparator transformedComparator (Comparator comparator, Transformer transformer)

Gets a Comparator that passes transformed objects to the given comparator.

Objects passed to the returned comparator will first be transformed by the given transformer before they are compared by the given comparator.

Parameters
comparator the sort order to use
transformer the transformer to use
Returns
  • a comparator that transforms its input objects before comparing them