1
resposta

[Projeto] Exercício 1: Adicionando um novo produto ao catálogo

Exercício 1: Adicionando um novo produto ao catálogo

import 'dart:convert';

void main() {
  String responseBody = '''
  [
    {"id": 1, "name": "Celular", "price": 1200.75},
    {"id": 2, "name": "Notebook", "price": 3500.10},
    {"id": 3, "name": "Tablet", "price": 1500.00}
  ]
  ''';

  print(responseBody.runtimeType);

  List<Map<String, dynamic>> produtoNovo = [
    {'id': 4, 'name': 'Mouse', 'price': 32.50},
  ];

  // Convertendo para uma Lista
  List<dynamic> lista = jsonDecode(responseBody);
  print(lista.runtimeType);
  
  // Convertendo para um Map
  List<Map<String, dynamic>> listaMap = lista.map<Map<String, dynamic>> ((item) => item as Map<String, dynamic>).toList();
  print(listaMap.runtimeType);
  
  print(listaMap);
  
  // Adicionando o produto ao Map
  listaMap.addAll(produtoNovo);
  
  print(listaMap);
}
1 resposta

Olá, Charles, como vai?

Você fez um ótimo trabalho no exercício. O código está correto e realiza todas as etapas necessárias para decodificar o JSON, converter para uma lista de maps e adicionar o novo produto. Parabéns pelo raciocínio e pelo cuidado com as boas práticas. Sempre que quiser trocar ideias ou aprofundar algum ponto, o fórum está à disposição.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!