org.springframework.util.comparator
Class NullSafeComparator<T>
- java.lang.Object
-
- org.springframework.util.comparator.NullSafeComparator<T>
-
- All Implemented Interfaces:
- Comparator<T>
public class NullSafeComparator<T> extends Object implements Comparator<T>
A Comparator that will safely compare nulls to be lower or higher than other objects. Can decorate a given Comparator or work on Comparables.- Since:
- 1.2.2
- Author:
- Keith Donald, Juergen Hoeller
- See Also:
-
Comparable
-
Field Summary
Fields Modifier and Type Field and Description static NullSafeComparator
NULLS_HIGH
A shared default instance of this comparator, treating nulls higher than non-null objects.static NullSafeComparator
NULLS_LOW
A shared default instance of this comparator, treating nulls lower than non-null objects.
Constructor Summary
Constructors Constructor and Description NullSafeComparator(Comparator<T> comparator, boolean nullsLow)
Create a NullSafeComparator that sortsnull
based on the provided flag, decorating the given Comparator.
-
Field Detail
NULLS_LOW
public static final NullSafeComparator NULLS_LOW
A shared default instance of this comparator, treating nulls lower than non-null objects.
NULLS_HIGH
public static final NullSafeComparator NULLS_HIGH
A shared default instance of this comparator, treating nulls higher than non-null objects.
Constructor Detail
NullSafeComparator
public NullSafeComparator(Comparator<T> comparator, boolean nullsLow)
Create a NullSafeComparator that sortsnull
based on the provided flag, decorating the given Comparator.When comparing two non-null objects, the specified Comparator will be used. The given underlying Comparator must be able to handle the elements that this Comparator will be applied to.
- Parameters:
-
comparator
- the comparator to use when comparing two non-null objects -
nullsLow
- whether to treat nulls lower or higher than non-null objects