rustHow to create a HashMap of structs in Rust?
A HashMap of structs in Rust can be created using the HashMap
type from the std::collections
module. The HashMap
type requires a key
and a value
type to be specified. The key
type must implement the Eq
and Hash
traits, while the value
type can be any type.
Example code
use std::collections::HashMap;
#[derive(Debug)]
struct Person {
name: String,
age: u32,
}
fn main() {
let mut map = HashMap::new();
map.insert("John", Person {
name: "John".to_string(),
age: 30,
});
map.insert("Alice", Person {
name: "Alice".to_string(),
age: 25,
});
println!("{:?}", map);
}
Output example
{"John": Person { name: "John", age: 30 }, "Alice": Person { name: "Alice", age: 25 }}
Code explanation
use std::collections::HashMap;
: This imports theHashMap
type from thestd::collections
module.#[derive(Debug)]
: This is a Rust attribute that allows thePerson
struct to be printed to the console.let mut map = HashMap::new();
: This creates a newHashMap
with no entries.map.insert("John", Person { ... });
: This inserts a new entry into theHashMap
with akey
of type&str
and avalue
of typePerson
.println!("{:?}", map);
: This prints the contents of theHashMap
to the console.
Helpful links
Related
- How to implement PartialEq for a Rust HashMap?
- How to create a HashMap of HashMaps in Rust?
- How to create a new Rust HashMap with values?
- How to convert a Rust HashMap to JSON?
- How to get the length of a Rust HashMap?
- How to remove an element from a Rust HashMap if a condition is met?
- How to convert a Rust HashMap to a JSON string?
- How to insert an element into a Rust HashMap if it does not already exist?
- How to lock a Rust HashMap?
- How to use an enum in a Rust HashMap?
More of Rust
- How to replace a capture group using Rust regex?
- How to match a URL with a regex in Rust?
- How to match the end of a line in a Rust regex?
- How to use an enum in a Rust HashMap?
- How to replace all matches using Rust regex?
- How to declare a Rust slice?
- How to get a capture group using Rust regex?
- How to match all using regex in Rust?
- How to get an element from a HashSet in Rust?
- How to convert a Rust HashMap to JSON?
See more codes...