У меня возникли проблемы с этим в течение нескольких дней и вы не можете пройти мимо него. У меня есть массив, который хранится.Проблема с сортировочным элементом arrayList
public class Application {
Time startTime = new Time(hour,minute);
Time endTime = new Time((startTime.getHour()), (startTime.getMinute() + duration));
Event e1 = new Event("Lecture", title, startTime, endTime);
Я хочу, чтобы отсортировать мои события основаны на моем Конечное время, вопрос я получаю то, что EndTime основан на STARTTIME, который использует час и минуту от моего Time
класса. Когда я попытался использовать compareTo
, я сбился с толку. Я поместил его в класс Time
, но потом понял, что для сравнения экземпляров должен быть класс Event
. Как использовать compareTo для сравнения endTimes, и как мне выводить сортировку. Когда я поставил СотрагеТ в моих событиях я получил
The method sort(List<T>) in the type Collections is not applicable for the arguments (ArrayList<Event>)
Collections.sort(events);
public Event(String type, String title, Time startTime, Time endTime) {
this.type = type;
this.title = title;
this.startTime = startTime;
this.endTime = endTime;
}
private int minute;
public Time(int hour, int minute) {
this.minute = hour * 60 + minute;
}
Также я мог extend
класс, или я должен реализовать его использовать compareTo
Как я могу вызвать метод compareTo в классе 'Time' из моего' compareTo' в 'Event'? – ProgrammingBeginner24
Точно так же, как вы назовете * какой-либо метод на экземпляре объекта! –