-, Comparable ; :
public class PrivateComparableClass
implements Comparable<PrivateComparableClass> {
thing compareTo() ( , ).
@Override
public final int compareTo(PrivateComparableClass that) {
return this.thing.compareTo(that.thing);
}
Comparable equals(), compareTo():
@Override
public final boolean equals(Object obj) {
if (obj == this)
return true;
if (!(obj instanceof PrivateComparableClass))
return false;
return compareTo((PrivateComparableClass) obj) == 0;
}
And, when you override equals(), you also need to override hashCode():
@Override
public final int hashCode() {
return thing.hashCode();
}
If it thingreally is allowed to be null, appropriate method for checking zeros should be added to each method.
source
share