Tópicos importantes de Rust
Rust HashMap
Store values under keys and look them up fast: insert, get, entry and counting.
O que você vai aprender
- insert and get
- entry().or_insert()
- Sorting the keys
stock
"apple"5"pear"5"plum"1Values found by key
A HashMap<K, V> stores values under keys, so you can find a value quickly by its key. It is Rust's version of a dictionary or associative array.
insert adds or replaces a value. entry(key).or_insert(0) returns the existing value or inserts a default, which makes counting easy. get returns an Option because the key may be missing. A HashMap has no fixed order, so the keys are sorted before printing.
Pontos-chave
- get returns an Option: the key may be missing.
entry(key).or_insert(0) is the counting pattern.- A HashMap has no fixed order.
Exemplo executável de Rust
main.rs
use std::collections::HashMap;
fn main() {
let mut stock: HashMap<String, u32> = HashMap::new();
stock.insert(String::from("apple"), 3);
stock.insert(String::from("pear"), 5);
*stock.entry(String::from("apple")).or_insert(0) += 2;
stock.entry(String::from("plum")).or_insert(1);
println!("apples: {}", stock["apple"]);
println!("has kiwi: {}", stock.contains_key("kiwi"));
if let Some(count) = stock.get("pear") {
println!("pears: {count}");
}
let mut names: Vec<&String> = stock.keys().collect();
names.sort();
println!("{:?}", names);
}
apples: 5
has kiwi: false
pears: 5
["apple", "pear", "plum"]Pratique
Abra o exemplo no compilador online, mude um valor ou adicione uma linha e tente prever a saída antes de executar. Depois quebre o código de propósito e leia a mensagem do compilador.
Terminou esta lição?
Marque como aprendida para acompanhar seu progresso.
Seu progresso está salvo neste navegador Entre para mantê-lo em todos os dispositivos.
Pratique com um desafio
Use o conteúdo desta lição para resolver um problema real. Cada desafio roda no navegador, com testes instantâneos e uma revisão por IA.
- Frequência de Caracteres Conte quantas vezes cada caractere aparece. Fácil
- Primeiro Caractere Único Encontre o primeiro caractere que aparece apenas uma vez. Fácil