HashMap<K, V, S = RandomState>は、キーを使って値にアクセスするようなデータ型です。
::newでミュータブルなハッシュマップを作り、::insertで値を登録します。データへアクセスする場合はインデックスと同じく[K]を変数の後ろに置きます。
use std::collections::HashMap;
let mut hash_map: HashMap<&str, i32> = HashMap::new();
hash_map.insert("nju", 33);
assert_eq!(hash_map["nju"], 33);キーとなる値にはHashとEqの両方を持っている型でなければなりません。
キーを持ってるか
::contains_keyを使います。
assert!(hash_map.contains_key("nju"));キーと値を削除
::removeで削除できます。
hash_map.remove("nju");
assert!(!hash_map.contains_key("nju"));すべてのキーを回して処理する
参照はIntoIteratorを持つのでこれを使います。それぞれの処理の前にkeyとvalueのタプルを受け取ります。
for (key, value) in &hash_map {
  println!("{key}: {value}", key = key, value = value);
}