Подскажите пожалуйста, где накосячил.
Всё ведь работает, но валидатор не проходит по третьему условию.
package com.javarush.task.task17.task1714;
/*
Comparable
*/
import org.w3c.dom.ls.LSOutput;
public 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 static void main(String[] args) {
Beach a = new Beach("Laguna", 8000, 6);
Beach b = new Beach("Vagina", 2000, 3);
int r = a.compareTo(b);
System.out.println(r > 0 ? "Пляж " + a.getName() + " лучше пляжа " + b.getName() + " на " + r + " пунктов." :
r < 0 ? "Пляж " + b.getName() + " лучше пляжа " + a.getName() + " на " + (0 - r) + " пунктов." :
"Пляжи " + a.getName() + " и " + b.getName() + " равны по качеству." );
}
@Override
public synchronized int compareTo(Beach o) {
int compareQuality = getQuality() - o.getQuality();
int compareDistance = (int) (o.getDistance() - getDistance()) / 500;
return compareQuality + compareDistance;
}
}
учительницывалидатора. Наша цель - в данном случае - разобраться с интерфейсом Comparable: как он работает, для чего нужен, какие основные принципы должны соблюдаться...