this.version = version;
}
- // Handles comparison between items starting with "-", returns 0 for all others.
- public static int compareWithoutLeadingDash(final String a, final String b, final Comparator c, int version) {
+ // Handles comparison between items containing "-".
+ public static int compareWithoutDash(final String a, final String b, final Comparator c, int version) {
if (version < 7) return 0;
- if (a.startsWith("-") || b.startsWith("-"))
- {
- String s1 = a;
- String s2 = b;
- if (s1.startsWith("-")) s1 = s1.substring(1);
- if (s2.startsWith("-")) s2 = s2.substring(1);
- return c.compare(s1, s2);
- }
- return 0;
+ String s1 = a.replace("-", "");
+ String s2 = b.replace("-", "");
+ return c.compare(s1, s2);
}
@Override
public int compare(final String s1, final String s2) {
final String n1 = normalizer.transform(s1);
final String n2 = normalizer.transform(s2);
- int cn = compareWithoutLeadingDash(n1, n2, comparator, version);
+ int cn = compareWithoutDash(n1, n2, comparator, version);
if (cn != 0) {
return cn;
}