###何したい?
HashMapのキーに対する値が入っていたら更新、入っていなかったら初期値を入れたい。
###やってみた
entryとor_insertを組み合わせる。
example
use std::collections::HashMap;
fn main() {
let mut map:HashMap<String,i32> = HashMap::new();
map.insert("a".to_string(), 1);
*map.entry("a".to_string()).or_insert(0) += 1;
*map.entry("b".to_string()).or_insert(0) += 1;
println!("{:?}", map);
println!("{:?}", map.get("b"));
println!("{:?}", map.get("c"));
}
結果
{"a": 2, "b": 1}
Some(1)
None