Package org.apache.commons.lang3.compare
Class ComparableUtils
java.lang.Object
org.apache.commons.lang3.compare.ComparableUtils
Helper translating
Comparable.compareTo(T)
results to booleans.
Example: boolean x = ComparableUtils.is(myComparable).lessThanOrEqualTo(otherComparable)
#ThreadSafe#
- Since:
- 3.10
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
ComparableUtils.ComparableCheckBuilder<A extends Comparable<A>>
Compares objects of a given generic typeA
. -
Method Summary
Modifier and TypeMethodDescriptionstatic <A extends Comparable<A>>
Predicate<A> between
(A b, A c) Creates a predicate to test if[b <= a <= c]
or[b >= a >= c]
where thea
is the tested object.static <A extends Comparable<A>>
Predicate<A> betweenExclusive
(A b, A c) Creates a predicate to test if(b < a < c)
or(b > a > c)
where thea
is the tested object.static <A extends Comparable<A>>
Predicate<A> ge
(A b) Creates a predicate to test if the tested object is greater than or equal tob
static <A extends Comparable<A>>
Predicate<A> gt
(A b) Creates a predicate to test if the tested object is greater thanb
static <A extends Comparable<A>>
ComparableUtils.ComparableCheckBuilder<A> is
(A a) Creates a newComparableUtils.ComparableCheckBuilder
.static <A extends Comparable<A>>
Predicate<A> le
(A b) Creates a predicate to test if the tested object is less than or equal tob
static <A extends Comparable<A>>
Predicate<A> lt
(A b) Creates a predicate to test if the tested object is less thanb
static <A extends Comparable<A>>
Amax
(A comparable1, A comparable2) Returns the greater of twoComparable
values, ignoring null.static <A extends Comparable<A>>
Amin
(A comparable1, A comparable2) Returns the lesser of twoComparable
values, ignoring null.
-
Method Details
-
between
Creates a predicate to test if[b <= a <= c]
or[b >= a >= c]
where thea
is the tested object.- Type Parameters:
A
- type of the test object- Parameters:
b
- the object to compare to the tested objectc
- the object to compare to the tested object- Returns:
- a predicate for true if the tested object is between b and c
-
betweenExclusive
Creates a predicate to test if(b < a < c)
or(b > a > c)
where thea
is the tested object.- Type Parameters:
A
- type of the test object- Parameters:
b
- the object to compare to the tested objectc
- the object to compare to the tested object- Returns:
- a predicate for true if the tested object is between b and c and not equal to those
-
ge
Creates a predicate to test if the tested object is greater than or equal tob
- Type Parameters:
A
- type of the test object- Parameters:
b
- the object to compare to the tested object- Returns:
- a predicate for true if the value returned by
Comparable.compareTo(T)
is greater than or equal to0
-
gt
Creates a predicate to test if the tested object is greater thanb
- Type Parameters:
A
- type of the test object- Parameters:
b
- the object to compare to the tested object- Returns:
- a predicate for true if the value returned by
Comparable.compareTo(T)
is greater than0
-
is
Creates a newComparableUtils.ComparableCheckBuilder
.- Type Parameters:
A
- type of the base object- Parameters:
a
- base object in the further comparison- Returns:
- a builder object with further methods
-
le
Creates a predicate to test if the tested object is less than or equal tob
- Type Parameters:
A
- type of the test object- Parameters:
b
- the object to compare to the tested object- Returns:
- a predicate for true if the value returned by
Comparable.compareTo(T)
is less than or equal to0
-
lt
Creates a predicate to test if the tested object is less thanb
- Type Parameters:
A
- type of the test object- Parameters:
b
- the object to compare to the tested object- Returns:
- a predicate for true if the value returned by
Comparable.compareTo(T)
is less than0
-
max
Returns the greater of twoComparable
values, ignoring null.For three or more values, use
ObjectUtils.max(Comparable...)
.- Type Parameters:
A
- Type of what we are comparing.- Parameters:
comparable1
- the first comparable, may be null.comparable2
- the second comparable, may be null.- Returns:
- the largest of
comparable1
andcomparable2
. - Since:
- 3.13.0
- See Also:
-
min
Returns the lesser of twoComparable
values, ignoring null.For three or more values, use
ObjectUtils.min(Comparable...)
.- Type Parameters:
A
- Type of what we are comparing.- Parameters:
comparable1
- the first comparable, may be null.comparable2
- the second comparable, may be null.- Returns:
- the smallest of
comparable1
andcomparable2
. - Since:
- 3.13.0
- See Also:
-