Class Comparators
java.lang.Object
org.eclipse.collections.impl.block.factory.Comparators
public final class Comparators extends Object
-
Method Summary
Modifier and Type Method Description static SerializableComparator<Collection<?>>
ascendingCollectionSizeComparator()
static <T> SerializableComparator<T>
byBooleanFunction(BooleanFunction<T> function)
static <T> SerializableComparator<T>
byByteFunction(ByteFunction<T> function)
static <T> SerializableComparator<T>
byCharFunction(CharFunction<T> function)
static <T> SerializableComparator<T>
byDoubleFunction(DoubleFunction<T> function)
static <T> SerializableComparator<Pair<T,?>>
byFirstOfPair(Comparator<? super T> comparator)
Creates a comparator for pairs by using an existing comparator that only compares the first element of the pairstatic <T> SerializableComparator<T>
byFloatFunction(FloatFunction<T> function)
static <T, V extends Comparable<? super V>>
SerializableComparator<T>byFunction(Function<? super T,? extends V> function)
static <T, V> SerializableComparator<T>
byFunction(Function<? super T,? extends V> function, Comparator<V> comparator)
static <T, V extends Comparable<? super V>>
SerializableComparator<T>byFunctionNullsFirst(Function<? super T,? extends V> function)
static <T, V extends Comparable<? super V>>
SerializableComparator<T>byFunctionNullsLast(Function<? super T,? extends V> function)
static <T> SerializableComparator<T>
byIntFunction(IntFunction<T> function)
static <T> SerializableComparator<T>
byLongFunction(LongFunction<T> function)
static <T> SerializableComparator<Pair<?,T>>
bySecondOfPair(Comparator<? super T> comparator)
Creates a comparator for pairs by using an existing comparator that only compares the second element of the pairstatic <T> SerializableComparator<T>
byShortFunction(ShortFunction<T> function)
static <T> SerializableComparator<T>
chain(Comparator<T>... comparators)
static <T> SerializableComparator<T>
comparableComparator()
static <T> Comparator<? super T>
comparableComparatorIfNull(Comparator<? super T> comparator)
static SerializableComparator<Collection<?>>
descendingCollectionSizeComparator()
static <T, V extends Comparable<? super V>>
SerializableComparator<T>fromFunctions(Function<? super T,? extends V> one)
static <T, V1 extends Comparable<? super V1>, V2 extends Comparable<? super V2>>
SerializableComparator<T>fromFunctions(Function<? super T,? extends V1> one, Function<? super T,? extends V2> two)
static <T, V1 extends Comparable<? super V1>, V2 extends Comparable<? super V2>, V3 extends Comparable<? super V3>>
SerializableComparator<T>fromFunctions(Function<? super T,? extends V1> one, Function<? super T,? extends V2> two, Function<? super T,? extends V3> three)
static <T> SerializableComparator<T>
naturalOrder()
Uses the natural compareTo methods of the objects which will throw if there are any nulls.static <T extends Comparable<T>>
intnullSafeCompare(T value1, T value2)
static boolean
nullSafeEquals(Object value1, Object value2)
static <T> SerializableComparator<SortedSetIterable<T>>
powerSet()
static <T> SerializableComparator<T>
reverse(Comparator<T> comparator)
static <T> SerializableComparator<T>
reverseNaturalOrder()
Uses the natural compareTo methods of the objects which will throw if there are any nulls.static <T> SerializableComparator<T>
safeNullsHigh(Comparator<T> notNullSafeComparator)
static <T> SerializableComparator<T>
safeNullsLow(Comparator<T> notNullSafeComparator)
-
Method Details
-
comparableComparator
- Since:
- 10.0
-
comparableComparatorIfNull
public static <T> Comparator<? super T> comparableComparatorIfNull(Comparator<? super T> comparator)- Since:
- 10.0
-
naturalOrder
Uses the natural compareTo methods of the objects which will throw if there are any nulls. -
reverseNaturalOrder
Uses the natural compareTo methods of the objects which will throw if there are any nulls. -
reverse
- Parameters:
comparator
- original comparator whose order will be reversed- Returns:
- A comparator that reverses the order of any other Serializable Comparator.
-
safeNullsLow
-
safeNullsHigh
-
chain
-
fromFunctions
public static <T, V extends Comparable<? super V>> SerializableComparator<T> fromFunctions(Function<? super T,? extends V> one) -
fromFunctions
public static <T, V1 extends Comparable<? super V1>, V2 extends Comparable<? super V2>> SerializableComparator<T> fromFunctions(Function<? super T,? extends V1> one, Function<? super T,? extends V2> two) -
fromFunctions
public static <T, V1 extends Comparable<? super V1>, V2 extends Comparable<? super V2>, V3 extends Comparable<? super V3>> SerializableComparator<T> fromFunctions(Function<? super T,? extends V1> one, Function<? super T,? extends V2> two, Function<? super T,? extends V3> three) -
powerSet
-
ascendingCollectionSizeComparator
-
descendingCollectionSizeComparator
-
byFirstOfPair
public static <T> SerializableComparator<Pair<T,?>> byFirstOfPair(Comparator<? super T> comparator)Creates a comparator for pairs by using an existing comparator that only compares the first element of the pair- Parameters:
comparator
- original comparator that compares the first element of the pair- Returns:
- A comparator that compares pairs only by their first element
-
bySecondOfPair
public static <T> SerializableComparator<Pair<?,T>> bySecondOfPair(Comparator<? super T> comparator)Creates a comparator for pairs by using an existing comparator that only compares the second element of the pair- Parameters:
comparator
- original comparator that compares the second element of the pair- Returns:
- A comparator that compares pairs only by their second element
-
byFunction
public static <T, V extends Comparable<? super V>> SerializableComparator<T> byFunction(Function<? super T,? extends V> function) -
byFunctionNullsLast
public static <T, V extends Comparable<? super V>> SerializableComparator<T> byFunctionNullsLast(Function<? super T,? extends V> function) -
byFunctionNullsFirst
public static <T, V extends Comparable<? super V>> SerializableComparator<T> byFunctionNullsFirst(Function<? super T,? extends V> function) -
byBooleanFunction
-
byByteFunction
-
byCharFunction
-
byDoubleFunction
-
byFloatFunction
-
byIntFunction
-
byLongFunction
-
byShortFunction
-
byFunction
public static <T, V> SerializableComparator<T> byFunction(Function<? super T,? extends V> function, Comparator<V> comparator) -
nullSafeEquals
-
nullSafeCompare
-