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

Rust

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

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

スポンサーリンク

方法

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

HashMap(ハッシュマップ)の値(value)の一覧を取得するには、values()を使います。

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

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

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

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

//Vecとして取得
//T=値の型
let values: Vec<T> = map.values().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 values = numbers.values();
    
    println!("{:?}", values);
}
出力:
[3, 1, 2, 5, 4]

コメント

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