Menu
CoddyTech

Herausforderung: Produkt finden

Teil des Abschnitts Grundlagen der Dart-Journey von Coddy. Lektion 94 von 94.

challenge icon

Aufgabe

Einfach

In dieser Herausforderung übst du, eine Liste zu durchlaufen, um das erste Element zu finden, das eine Bedingung erfüllt.

Du hast eine Liste von Produkten in einem Warenkorb, die als Maps mit Name, Preis und Menge dargestellt werden. Deine Aufgabe ist es, die Funktion findProduct zu vervollständigen, die im Warenkorb nach einem Produkt anhand seines Namens sucht.

Die Funktion sollte das erste Produkt zurückgeben, das dem angegebenen Namen entspricht, oder null, wenn keine Übereinstimmung gefunden wird.

Vervollständige den Code, um diese Suchfunktion korrekt zu implementieren.

Probier es selbst

void main() {
  // Warenkorb mit Produkten
  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}
  ];
  
  // Die Funktion findProduct testen
  Map<String, dynamic>? foundProduct = findProduct(shoppingCart, 'Headphones');
  if (foundProduct != null) {
    print('Found: ${foundProduct['name']} - \$${foundProduct['price']} (Quantity: ${foundProduct['quantity']})');
  } else {
    print('Product not found');
  }
  
  // Mit einem Produkt testen, das nicht existiert
  foundProduct = findProduct(shoppingCart, 'Monitor');
  if (foundProduct != null) {
    print('Found: ${foundProduct['name']} - \$${foundProduct['price']} (Quantity: ${foundProduct['quantity']})');
  } else {
    print('Product not found');
  }
}

// TODO: Diese Funktion vervollständigen, um ein Produkt anhand seines Namens zu finden
Map<String, dynamic>? findProduct(List<Map<String, dynamic>> cart, String productName) {
  // TODO: Den Warenkorb durchlaufen und das erste Produkt zurückgeben, das mit productName übereinstimmt
  // TODO: null zurückgeben, wenn kein passendes Produkt gefunden wird
  
}

Alle Lektionen in Grundlagen

Übe selbstständig: Online-Dart-Compiler