Проверка пустоты множества в Rust
Пустоту спрашивают отдельной командой. Она возвращает истину, если элементов нет, и ложь, если в наборе уже есть хотя бы одно значение. Сравнивать длину с нулем тоже можно, но для множества есть короткая форма.
Сравним новое множество и набор после записи:
use std::collections::HashSet;
fn main() {
let mut empty = HashSet::new();
println!("{}", empty.is_empty());
empty.insert("a".to_string());
println!("{}", empty.is_empty());
}
Сначала true, затем false. В условии
удобно писать проверку пустоты напрямую, без
лишних сравнений с числом.
После очистки множество снова считается пустым, хотя переменная та же:
use std::collections::HashSet;
fn main() {
let mut set = HashSet::new();
set.insert(1);
set.insert(2);
set.clear();
println!("{}", set.is_empty());
}
Даны переменные:
let mut set = HashSet::new();
Выведите признак пустоты set.
Дано множество:
let mut set = HashSet::new();
set.insert(7);
Выведите, пусто ли set, затем удалите
значение и проверьте снова.
Чем проверка пустоты отличается от вопроса «есть ли одно выбранное значение»?