Orindare una lista di oggetti in Dart
Suppniamo di avere una lista di oggetti in Dart, e di volerla ordinare.
L'oggetto List in Dart ha l'apposito metodo sort a cui passiamo le "regole" di ordinamento.
Vediamo qualche esempio.
Questo il nostro oggetto:
class Author {
final int? id;
final String? name;
Author({
this.id,
this.name,
});
}
Qui un esempio in cui facciamo un ordiamento sia per id che per name:
import 'author.dart';
void main() {
List<Author> list = [];
list.add(Author(id: 1, name: "UNO"));
list.add(Author(id: 3, name: "TRE"));
list.add(Author(id: 2, name: "DUE"));
for (var el in list) {
print(el.id);
}
print("ORDINAMENTO PER ID");
list.sort((a, b) => a.id!.compareTo(b.id!));
for (var el in list) {
print(el.id);
}
print("ORDINAMENTO PER NOME");
list.sort((a, b) => a.name!.compareTo(b.name!));
for (var el in list) {
print(el.name);
}
}
Enjoy!
dart list sort compareto
Commentami!