Прошу прощения, если это дубликат, но я не смог найти решение в сообщениях, которые я читал.Сортировка ArrayList пользовательских объектов одним из его членов
У меня есть собственный класс, который содержит несколько строк и дату. Я создал и ArrayList этой структуры, и теперь я хочу, чтобы этот ArrayList был отсортирован от самого нового до самого старого, используя поле Date. Как я могу отсортировать этот список? Есть ли способ создать пользовательский компаратор, который будет сортировать ArrayList в соответствии с датой в моем классе?
Мой код класса:
public class ParsedWebData {
String title;
String url;
String description;
Date date;
String dateString;
public ParsedWebData() {
}
public ParsedWebData(String title, String url, String description, Date date, String dateString) {
this.title = title;
this.url = url;
this.description = description;
this.date = date;
this.dateString = dateString;
}
public String getTitle() {
return title;
}
public String getUrl() {
return url;
}
public String getDescription() {
return description;
}
public Date getDate() {return date;}
public String getDateString() {return dateString;}
}
Так что мой ArrayList декларация выглядит следующим образом:
ArrayList<ParsedWebData> data = new ArrayList<>;
EDIT 1
Я пытался использовать:
list.sort(Comparator.comparing(ParsedWebData::getDate));
Но я получаю:
Call requires API level 24 (current min is 16): java.util.ArrayList#Sort
Этот метод требует API 24, и я хочу, чтобы сохранить совместимость с более низкими устройствами API – TheTechGuy96