Pular para conteúdo

Mini-Projeto: Agenda de Contatos 📞

Neste projeto, vamos usar o HashMap para criar uma agenda de contatos extremamente rápida e eficiente.

📋 Requisitos

  1. Armazenamento: Use um HashMap<String, String> onde a chave é o nome e o valor é o telefone.
  2. Operações: O programa deve permitir adicionar, buscar e remover contatos.
  3. Listagem: Use um loop for para imprimir todos os contatos da agenda.

🚀 Guia de Execução

  1. Estrutura sugerida:
    use std::collections::HashMap;
    
    fn main() {
        let mut agenda = HashMap::new();
    
        // 1. Adicionar
        agenda.insert(String::from("Alice"), String::from("9999-8888"));
        agenda.insert(String::from("Bob"), String::from("8888-7777"));
    
        // 2. Buscar
        let nome_busca = "Alice";
        match agenda.get(nome_busca) {
            Some(tel) => println!("Telefone de {}: {}", nome_busca, tel),
            None => println!("Contato não encontrado!"),
        }
    
        // 3. Listar tudo
        println!("\nMinha Agenda:");
        for (nome, tel) in &agenda {
            println!("- {}: {}", nome, tel);
        }
    }
    

✅ Critérios de Aceite

  • [ ] O HashMap é utilizado corretamente para indexar os contatos.
  • [ ] O programa lida com a ausência de chaves de forma segura (usando match ou if let).
  • [ ] O código demonstra o uso de referências ao iterar pela coleção.