120 votes

Comment ajouter une nouvelle paire à la carte en Dart ?

J'ai rencontré les erreurs suivantes lors de l'ajout d'une nouvelle paire à une carte.

  • Variables must be declared using the keywords const, final, var, or a type name
  • Expected to find;
  • the name someMap is already defined

J'ai exécuté le code suivant.

Map<String, int> someMap = {
  "a": 1,
  "b": 2,
};

someMap["c"] = 3;

Comment ajouter une nouvelle paire à la carte ?

J'aimerais aussi savoir comment utiliser Map.update .

3 votes

Ce code est-il dans une méthode ? Les affectations ou tout autre code ne peuvent pas être exécutés dans la portée de niveau supérieur.

0 votes

Je vous remercie pour votre commentaire. Je ne le savais pas. Ça marche.

1 votes

Dart est si faible quand la conversion de type arrive.

1voto

Omid Raha Points 2398

J'écris cet utilitaire :

Map updateMap({
  /// Update a map with another map
  /// Example:
  ///   Map map1 = {'name': 'Omid', }
  ///   Map map2 = {'family': 'Raha', }
  ///   Map map = updateMap(data:map1, update:map2);
  /// Result:
  ///   map = {'name': 'Omid', 'family': 'Raha',}
  @required Map data,
  @required Map update,
}) {
  if (update == null) return data;
  update.forEach((key, value) {
    data[key] = value;
  });
  return data;
}

Ejemplo:

Map map1 = {'name': 'Omid', }
Map map2 = {'family': 'Raha', }

Map map = updateMap(data:map1, update:map2);

print(map);

{'name': 'Omid', 'family': 'Raha',}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X