Метод keys
Метод keys возвращает итератор, который обходит
все ключи хеш-таблицы HashMap. Метод не принимает
параметров и возвращает объект Keys, реализующий
трейт Iterator. Порядок обхода ключей не
гарантируется и может меняться между запусками программы.
Синтаксис
hashmap.keys()
Пример
Давайте создадим хеш-таблицу и выведем все её ключи:
use std::collections::HashMap;
fn main()
{
let mut map = HashMap::new();
map.insert("a", 1);
map.insert("b", 2);
map.insert("c", 3);
for key in map.keys() {
println!("{}", key);
}
}
Результат выполнения кода:
"a"
"b"
"c"
Пример
Давайте соберём все ключи в вектор с помощью метода collect:
use std::collections::HashMap;
fn main()
{
let mut map = HashMap::new();
map.insert(1, "abcde");
map.insert(2, "12345");
map.insert(3, "hello");
let keys: Vec<&i32> = map.keys().collect();
println!("{:?}", keys);
}
Результат выполнения кода:
[1, 2, 3]
Пример
Давайте посчитаем количество ключей в хеш-таблице
с помощью метода count:
use std::collections::HashMap;
fn main()
{
let mut map = HashMap::new();
map.insert("one", 1);
map.insert("two", 2);
map.insert("three", 3);
let count = map.keys().count();
println!("{}", count);
}
Результат выполнения кода:
3
Смотрите также
-
метод
values,
который возвращает итератор по значениям хеш-таблицы -
метод
iter,
который возвращает итератор по парам ключ-значение -
метод
get,
который возвращает значение по указанному ключу -
метод
contains_key,
который проверяет наличие ключа в хеш-таблице