rustHow to create a HashMap of HashMaps in Rust?
A HashMap of HashMaps can be created in Rust using the HashMap::new() method. The following example code creates a HashMap of HashMaps with String keys and i32 values:
use std::collections::HashMap;
let mut map_of_maps: HashMap<String, HashMap<String, i32>> = HashMap::new();
let mut inner_map1: HashMap<String, i32> = HashMap::new();
inner_map1.insert(String::from("key1"), 1);
inner_map1.insert(String::from("key2"), 2);
let mut inner_map2: HashMap<String, i32> = HashMap::new();
inner_map2.insert(String::from("key3"), 3);
inner_map2.insert(String::from("key4"), 4);
map_of_maps.insert(String::from("map1"), inner_map1);
map_of_maps.insert(String::from("map2"), inner_map2);
println!("{:?}", map_of_maps);
Output example
{"map1": {"key1": 1, "key2": 2}, "map2": {"key3": 3, "key4": 4}}
Code explanation
-
use std::collections::HashMap;- imports theHashMaptype from thestd::collectionsmodule. -
let mut map_of_maps: HashMap<String, HashMap<String, i32>> = HashMap::new();- creates aHashMapwithStringkeys andHashMapvalues, where theHashMapvalues haveStringkeys andi32values. -
let mut inner_map1: HashMap<String, i32> = HashMap::new();- creates aHashMapwithStringkeys andi32values. -
inner_map1.insert(String::from("key1"), 1);- inserts a key-value pair into theinner_map1HashMap. -
map_of_maps.insert(String::from("map1"), inner_map1);- inserts a key-value pair into themap_of_mapsHashMap, where the value is theinner_map1HashMap.
Helpful links
Related
- How to sort the keys in a Rust HashMap?
- How to use a custom hash function with a Rust HashMap?
- How to build a Rust HashMap from an iterator?
- How to clear a Rust HashMap?
- How to create a Rust HashMap?
- How to check if a Rust HashMap contains a key?
- How to remove an element from a Rust HashMap if a condition is met?
- How to print a Rust HashMap?
- How to create a HashMap of traits in Rust?
More of Rust
- How to use regex lookbehind in Rust?
- How to match whitespace with a regex in Rust?
- How to use Unicode in a regex in Rust?
- How to match a URL with a regex in Rust?
- How to lock a Rust HashMap?
- How to replace a capture group using Rust regex?
- How to replace strings using Rust regex?
- How to create a Rust HashMap?
- How to split a string with Rust regex?
- How to use 'or' in Rust regex?
See more codes...