Здравствуйте. Помогите, пожалуйста решить следующую проблему.
Нужно чтобы компилировался и правильно работал:
public static void main(String[] args) {
MyClass<Integer>a = new MyClass<Integer>(1);
MyClass<Integer>b = new MyClass<Integer>(2);
if (a>b)
{
System.out.println("true");
}
}
Как я понимаю, для того чтобы можно было сравнивать объекты класса, нужно чтобы этот класс реализовывал интерфейс Comparable.
class MyClass<T extends Comparable<T>> implements Comparable<T> {
T data;
MyClass(T data) {
this.data = data;
}
public int compareTo(T o) {
return compare(this.data, o);
}
public int compare(T x, T y) {
return (x < y) ? -1 : ((x == y) ? 0 : 1);
}
}
Но теперь как сдллать чтобы метод
compare корректно сравнивал тех, кто
> (кого можно сравнивать между собой).