为什么会提示 确保 x.compareTo(y) == -y.compareTo(x)?
package zh.codegym.task.task17.task1714;
/*
Comparable
*/
class Beach implements Comparable<Beach> {
private String name;
private float distance;
private int quality;
public Beach(String name, float distance, int quality) {
this.name = name;
this.distance = distance;
this.quality = quality;
}
public synchronized String getName() {
return name;
}
public synchronized void setName(String name) {
this.name = name;
}
public synchronized float getDistance() {
return distance;
}
public synchronized void setDistance(float distance) {
this.distance = distance;
}
public synchronized int getQuality() {
return quality;
}
public synchronized void setQuality(int quality) {
this.quality = quality;
}
public synchronized static void main(String[] args) {
}
@Override
public synchronized int compareTo(Beach o) {
if (quality - o.getQuality() != 0 && distance - o.getDistance() !=0) {
return (int) ((quality - o.getQuality()) + ((int)distance-o.getDistance()));
}else {
return 0;
}
}
}