Orindare una lista di oggetti in Dart

Mattepuffo's logo
Orindare una lista di oggetti in Dart

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!


Condividi

Commentami!