@FunctionalInterface public interface IntOrdering extends ByteOrdering, ShortOrdering, CharOrdering
Compared to a Comparator<Integer>
this can
avoid boxing and unboxing in various situations.
Modifier and Type | Interface and Description |
---|---|
static interface |
IntOrdering.Serial
An int ordering which is serializable.
|
Modifier and Type | Field and Description |
---|---|
static IntOrdering |
ASCENDING
Natural order of ascending
int values. |
static IntOrdering |
DESCENDING
Inverse natural order of
int values. |
static IntOrdering |
UNSIGNED_ASCENDING
Natural order of ascending unsigned
int values. |
static IntOrdering |
UNSIGNED_DESCENDING
Natural order of ascending unsigned
int values. |
Modifier and Type | Method and Description |
---|---|
default boolean |
ascending(int v1,
int v2)
Are the two values represented in strictly ascending order?
|
default boolean |
ascendingOrSame(int v1,
int v2)
Are the two values represented in ascending order?
|
default java.util.Comparator<java.lang.Integer> |
asIntComparator()
Use this ordering as a comparator.
|
default Ordering<java.lang.Integer> |
asIntOrdering()
Get this ordering as a generic int ordering.
|
default java.util.Comparator<java.lang.Number> |
asNumberComparator()
View this ordering as a number comparator.
|
default Order |
checkByte(byte v1,
byte v2)
Get the order of the two values.
|
default Order |
checkChar(char v1,
char v2)
Get the order of the two values.
|
Order |
checkInt(int v1,
int v2)
Get the order of the two values.
|
default Order |
checkShort(short v1,
short v2)
Get the order of the two values.
|
default boolean |
descending(int v1,
int v2)
Are the two values represented in strictly descending order?
|
default boolean |
descendingOrSame(int v1,
int v2)
Are the two values represented in descending order?
|
default boolean |
different(int v1,
int v2)
Are the two values considered different by this order?
|
static IntOrdering |
fromComparator(java.util.Comparator<java.lang.Integer> comparator)
Convert a standard comparator of
Double into a double ordering. |
default IntOrdering |
inverse()
Invert this order.
|
default boolean |
same(int v1,
int v2)
Are the two values considered equal by this order?
|
asByteComparator, asByteOrdering, ascending, ascendingOrSame, descending, descendingOrSame, different, fromComparator, same
ascending, ascendingOrSame, asShortComparator, asShortOrdering, descending, descendingOrSame, different, fromComparator, same
ascending, ascendingOrSame, asCharComparator, asCharOrdering, descending, descendingOrSame, different, fromComparator, same
static final IntOrdering ASCENDING
int
values.static final IntOrdering DESCENDING
int
values.static final IntOrdering UNSIGNED_ASCENDING
int
values.
This handles int values as if they are unsigned and not signed.static final IntOrdering UNSIGNED_DESCENDING
int
values.
This handles int values as if they are unsigned and not signed.@NotNull Order checkInt(int v1, int v2)
v1
- first valuev2
- second value@NotNull default Order checkByte(byte v1, byte v2)
ByteOrdering
checkByte
in interface ByteOrdering
v1
- first valuev2
- second value@NotNull default Order checkChar(char v1, char v2)
CharOrdering
checkChar
in interface CharOrdering
v1
- first valuev2
- second value@NotNull default Order checkShort(short v1, short v2)
ShortOrdering
checkShort
in interface ShortOrdering
v1
- first valuev2
- second valuedefault boolean ascending(int v1, int v2)
v1
- first valuev2
- second valuetrue
if v1 < v2
according to this orderingfalse
if v1 >= v2
according to this orderingdescending(int, int)
,
ascendingOrSame(int, int)
,
descendingOrSame(int, int)
,
same(int, int)
,
different(int, int)
default boolean ascendingOrSame(int v1, int v2)
v1
- first valuev2
- second valuetrue
if v1 <= v2
according to this orderingfalse
if v1 > v2
according to this orderingascending(int, int)
,
descending(int, int)
,
descendingOrSame(int, int)
,
same(int, int)
,
different(int, int)
default boolean descending(int v1, int v2)
v1
- first valuev2
- second valuetrue
if v1 > v2
according to this orderingfalse
if v1 <= v2
according to this orderingascending(int, int)
,
ascendingOrSame(int, int)
,
descendingOrSame(int, int)
,
same(int, int)
,
different(int, int)
default boolean descendingOrSame(int v1, int v2)
v1
- first valuev2
- second valuetrue
if v1 >= v2
according to this orderingfalse
if v1 < v2
according to this orderingascending(int, int)
,
descending(int, int)
,
ascendingOrSame(int, int)
,
same(int, int)
,
different(int, int)
default boolean same(int v1, int v2)
v1
- first valuev2
- second valuetrue
if v1 == v2
according to this orderfalse
if v1 != v2
according to this orderingascending(int, int)
,
descending(int, int)
,
ascendingOrSame(int, int)
,
descendingOrSame(int, int)
,
different(int, int)
default boolean different(int v1, int v2)
v1
- first valuev2
- second valuetrue
if v1 != v2
according to this orderfalse
if v1 == v2
according to this orderingascending(int, int)
,
descending(int, int)
,
ascendingOrSame(int, int)
,
descendingOrSame(int, int)
,
same(int, int)
@NotNull default IntOrdering inverse()
inverse
in interface ByteOrdering
inverse
in interface CharOrdering
inverse
in interface ShortOrdering
@NotNull default java.util.Comparator<java.lang.Integer> asIntComparator()
Int
@NotNull default java.util.Comparator<java.lang.Number> asNumberComparator()
asNumberComparator
in interface ByteOrdering
asNumberComparator
in interface ShortOrdering
Number
@NotNull default Ordering<java.lang.Integer> asIntOrdering()
@NotNull static IntOrdering fromComparator(@NotNull java.util.Comparator<java.lang.Integer> comparator)
Double
into a double ordering.comparator
- comparator of Double