public class VersionComparator
extends java.lang.Object
implements java.util.Comparator<java.lang.String>
Comparator
for version strings.
SNAPSHOT items always lowest rated, then splitting on dots, using natural order comparator (so "9" < "10" and "4u8" < "4u20"), and preferring segments without qualifiers ("4" > "4beta").
Impossible to follow semantics for all versioning schemes but does the obvious right thing for normal schemes and pretty well in fringe cases.
See test case for lots of examples.
Modifier and Type | Field and Description |
---|---|
static VersionComparator |
INSTANCE |
Constructor and Description |
---|
VersionComparator() |
Modifier and Type | Method and Description |
---|---|
int |
compare(java.lang.String v1,
java.lang.String v2) |
static VersionComparator |
getInstance() |
public static final VersionComparator INSTANCE
public static VersionComparator getInstance()
public int compare(java.lang.String v1, java.lang.String v2)
compare
in interface java.util.Comparator<java.lang.String>