Collections Dart
Collections
Section titled “Collections”final cityList = ['Paris', 'Londres', 'Rome'];cityList.add('Amsterdam');cityList.addAll(['Madrid', 'Barcelone']);cityList.removeLast();cityList.add('Rome');
final uppercaseCities = cityList .map((city) => city.toUpperCase()) .toList();print(uppercaseCities);Collection d’éléments uniques :
final citySet = {'Paris', 'Londres', 'Rome'};citySet.add('Rome'); // N'ajoute pas de doublonprint('Cities $citySet');final city = { 'name': 'Paris', 'country': 'France', 'pictures': ['paris1.jpg', 'paris2.jpg'],};
enum Status { pending, error, done }
Map<Status, Color> colorMap = { Status.pending: Colors.grey, Status.error: Colors.red, Status.done: Colors.green,};
void main() { print(city['country']); print(colorMap[Status.error]);}Records
Section titled “Records”Depuis Dart 3.0 :
void main() { // Records positionnels final position = getPoint(); print('position X : ${position.$1}, Y : ${position.$2}, Z : ${position.$3}');
// Destructuring final (x, y, z) = getPoint(); print('position X : $x, Y : $y, Z : $z');
// Named records final coordinates = getPosition(); print('longitude ${coordinates.longitude} latitude ${coordinates.latitude}');}
(double, double, double) getPoint() { final x = computeX(); final y = computeY(); final z = computeZ(); return (x, y, z);}
({double longitude, double latitude}) getPosition() { final longitude = computeLongitude(); final latitude = computeLatitude(); return (latitude: latitude, longitude: longitude);}