-
Enhancement
-
Resolution: Unresolved
-
P4
-
None
-
None
Add a comparison method to Optional. This should have overloads that take a comparator or rely on the contained objects to be comparable. There should also be a way to sort empty Optionals first or last. For example:
static <T> int compare(Optional<? extends T> a, Optional<? extends T> b, boolean emptyFirst, Comparator<T> cmp)
static <T extends Comparable<? super T>>
int compare(Optional<? extends T> a, Optional<? extends T> b, boolean emptyFirst)
static <T> int compare(Optional<? extends T> a, Optional<? extends T> b, boolean emptyFirst, Comparator<T> cmp)
static <T extends Comparable<? super T>>
int compare(Optional<? extends T> a, Optional<? extends T> b, boolean emptyFirst)