Menu
Coddy logo textTech

Défi : Trouver le produit

Fait partie de la section Fondamentaux du Journey Dart de Coddy. Leçon 94 sur 94.

challenge icon

Défi

Facile

Dans ce défi, vous vous exercerez à utiliser la méthode find avec des listes pour localiser des éléments spécifiques en fonction de conditions.

Vous disposez d’une liste de produits dans un panier, représentés sous forme de maps avec un nom, un prix et une quantité. Votre tâche consiste à compléter la fonction findProduct qui recherche un produit par son nom dans le panier.

La fonction doit retourner le premier produit correspondant au nom indiqué, ou null si aucune correspondance n’est trouvée.

Complétez le code pour implémenter correctement cette fonctionnalité de recherche.

Essayez vous-même

void main() {
  // Panier d'achat avec des produits
  List<Map<String, dynamic>> shoppingCart = [
    {'name': 'Laptop', 'price': 999.99, 'quantity': 1},
    {'name': 'Headphones', 'price': 59.99, 'quantity': 2},
    {'name': 'Mouse', 'price': 24.99, 'quantity': 1},
    {'name': 'Keyboard', 'price': 49.99, 'quantity': 1}
  ];
  
  // Test de la fonction findProduct
  Map<String, dynamic>? foundProduct = findProduct(shoppingCart, 'Headphones');
  if (foundProduct != null) {
    print('Found: ${foundProduct['name']} - \$${foundProduct['price']} (Quantity: ${foundProduct['quantity']})');
  } else {
    print('Product not found');
  }
  
  // Test avec un produit qui n'existe pas
  foundProduct = findProduct(shoppingCart, 'Monitor');
  if (foundProduct != null) {
    print('Found: ${foundProduct['name']} - \$${foundProduct['price']} (Quantity: ${foundProduct['quantity']})');
  } else {
    print('Product not found');
  }
}

// TODO: Compléter cette fonction pour trouver un produit par nom
Map<String, dynamic>? findProduct(List<Map<String, dynamic>> cart, String productName) {
  // TODO: Parcourir le panier et retourner le premier produit qui correspond à productName
  // TODO: Retourner null si aucun produit correspondant n'est trouvé
  
}

Toutes les leçons de Fondamentaux

Entraînez-vous par vous-même : Compilateur Dart en ligne