[Rust]HashMap(ハッシュマップ)のキー(key)の一覧を取得するには?

Rust

どうも、ちょげ(@chogetarou)です。

HashMap(ハッシュマップ)のキー(key)の一覧を取得する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

HashMap(ハッシュマップ)のキー(key)の一覧を取得するには、keys()を使います。

具体的には、「map.keys()」のように、HashMapからkeys()を呼び出します。

//map=対象のマップ
let keys = map.keys();

上記のkeys()は、呼び出したHashMap(ハッシュマップ)のキー(key)の一覧をイテレータとして取得します。

もし、キーの一覧をVec(ベクタ)で取得したい場合は、collect()を使います。

//Vecとして取得
//T=キーの型
let keys: Vec<T> = map.keys().cloned().collect::<Vec<T>>();

使用例

use std::collections::HashMap;

fn main() {
    let mut numbers = HashMap::new();
    
    numbers.insert("one", 1);
    numbers.insert("two", 2);
    numbers.insert("three", 3);
    numbers.insert("four", 4);
    numbers.insert("five", 5);
    
    let keys = numbers.keys();
    
    println!("{:?}", keys);
}
出力:
["one", "four", "three", "two", "five"]

コメント

タイトルとURLをコピーしました