@Override public int compareTo(MatchResult o) { int cmp = Integer.compare(this.getExact(), o.getExact()); if (cmp == 0) { cmp = Integer.compare(this.getAssignable(), o.getAssignable()); if (cmp == 0) { cmp = Integer.compare(this.getCoercible(), o.getCoercible()); } } return cmp; }