У меня есть проблемы с реализацией моего пользовательского компаратора для моего класса:Невозможно использовать пользовательский компаратор в Java
public class MyProject {
private static class SuperClass {
public SuperClass (ArrayList<Car> cars) {
Collections.sort(cars);
Collections.sort(cars, new Car.CustomOrder());
}
}
public final static class Car implements Comparable<Car> {
public Comparator<Car> customOrder() {
return new CustomOrder();
}
public class CustomOrder implements Comparator<Car> {
public int compare(Car c1, Car c2) {
// some code
return 1;
}
}
}
Я хотел бы сортировать автомобили нестандартного компаратором CustomOrder
. Я не могу найти свою ошибку, поэтому, пожалуйста, помогите мне.
Этот код полон неактивного кода. Вы читали сообщения об ошибках из компилятора? Что они говорят? Что ты не понимаешь? Почему вы думаете, что это хорошая идея вложить все ваши классы таким образом? –
Что такое автомобиль ... или более конкретно: что имеет автомобиль для полей, которые вы можете связать с индивидуальным заказом? –
Кроме того, нет смысла (по крайней мере, мне) называть 'sort()' в ctor SuperClass. Это не требуется классу «Компаратор», и нет смысла принудительно выполнять операцию сортировки, как это в компараторе. – markspace