Я хочу отсортировать список предметов, используя Comparable. Класс предметов имеет следующую структуру. Сначала я хочу отсортировать по элементу rating
, а если есть ie, то по reviewQty
. Это код, который я пробовал до сих пор, который не работает. Я также пробовал Comparator, но не знаю, как сортировать его в случае связей.
class MenuItem extends BaseModel implements Comparable<MenuItem>{
final double rating;
final int reviewQty;
@override
int compareTo(MenuItem other) {
double diff = (rating - other.rating);
return diff != 0 ? diff : this.reviewQty.compareTo(other.reviewQty);}}}
Протестировано с использованием
items.sort();
items.forEach((MenuItem item) {
print('${item.name} , ${item.rating}');
});