Rechercher dans une map
Fait partie de la section Listes et écrans du Journey Flutter de Coddy. Leçon 17 sur 33.
Une Map stocke des paires : une clé que tu recherches et la valeur qui lui correspond, comme un mot et sa définition dans un dictionnaire. Ici, chaque article d’une boutique de jeu a un prix :
Map<String, int> prices = {
'Sword': 120,
'Potion': 25,
};
prices['Sword'] // 120
prices['Axe'] // null : il n'y a pas de AxeMap<String, int> indique que les clés sont des chaînes de caractères et les valeurs, des entiers. Recherche une valeur à l’aide de sa clé entre crochets. Si la clé n’existe pas dans la map, le résultat est null.
Ajoute une paire avec prices['Bow'] = 150;, ou écris-la directement dans la map. prices.keys contient toutes les clés, dans l’ordre où elles ont été ajoutées, prêtes à être parcourues avec une boucle for.
Défi
FacileLa boutique affiche ses articles, mais pas leurs prix. Affiche les prix et ajoute un article au stock :
- affiche le prix de chaque article à la fin de sa ligne, par exemple
120 coins, recherché dansprices - ajoute un
Bowpour150pièces à la map
Essayez vous-même
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
final Map<String, int> prices = {
'Sword': 120,
'Shield': 90,
'Potion': 25,
};
return MaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
appBar: AppBar(title: const Text('Shop')),
body: ListView(
children: [
for (String item in prices.keys)
ListTile(
title: Text(item),
),
],
),
),
);
}
}
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Listes et écrans
1Listes défilantes
Une liste qui défileÉléments de listeDébut et finAppuyer sur un élément de listeSéparateurs entre les lignes4Vos propres classes
Une classe pour vos donnéesParamètres nommés et obligatoiresChamps pouvant être videsCréer des widgets à partir de données avec mapFiltrer une liste avec whereRechercher dans une map2Des listes à partir de données
Construire des lignes avec un générateurNuméroter les lignesLignes avec séparateursEntraînez-vous par vous-même : Compilateur Flutter en ligne