Проверка пустоты карты в Rust
Пустоту спрашивают отдельной командой у карты. Она возвращает да, если пар нет, и нет, если хотя бы одна пара записана. Это удобнее, чем сравнивать длину с нулем вручную.
Сравним новую пустую карту и карту с одной записью:
use std::collections::HashMap;
fn main() {
let empty = HashMap::new();
let mut full = HashMap::new();
full.insert("a", 1);
println!("{}", empty.is_empty());
println!("{}", full.is_empty());
}
Для empty будет true, для
full будет false. После
первой записи ответ меняется на нет.
После удаления единственной пары проверка снова дает да:
use std::collections::HashMap;
fn main() {
let mut ages = HashMap::new();
ages.insert("ann", 20);
ages.remove("ann");
println!("{}", ages.is_empty());
}
Дана следующая карта:
let slot = HashMap::new();
Выведите, пуста ли slot.
Дана следующая карта:
let mut box_map = HashMap::new();
Выведите ответ проверки до и после одной новой пары.
Чем ответ проверки пустоты отличается от сравнения длины с нулем, если пар нет?