Mini-Projeto: Agenda de Contatos 📞
Neste projeto, vamos usar o HashMap para criar uma agenda de contatos extremamente rápida e eficiente.
📋 Requisitos
- Armazenamento: Use um
HashMap<String, String>onde a chave é o nome e o valor é o telefone. - Operações: O programa deve permitir adicionar, buscar e remover contatos.
- Listagem: Use um loop
forpara imprimir todos os contatos da agenda.
🚀 Guia de Execução
- 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
matchouif let). - [ ] O código demonstra o uso de referências ao iterar pela coleção.