Avatar ·

如何在Rust中创建HashMap字面量:宏与手动创建

大家好!我刚开始学习Rust,遇到了创建HashMap的问题。在其他语言中,比如Python或JavaScript,可以直接写`{"key": "value"}`来得到一个字典。但在Rust中,我找不到一种简单的方法来创建带有初始值的HashMap。 以下是我尝试过的: ```rust use std::collections::HashMap; fn main() { // 尝试创建一个包含键值对的HashMap let map = HashMap::new(); map.insert("name", "Alice"); map.insert("age", "30"); println!("{:?}", map); } ``` 但编译器报错,说我对不可变变量使用了`insert`。我知道需要添加`mut`,但这有点不方便。也许有一种方法可以像其他语言那样一行创建HashMap?我听说过用于向量的`vec!`宏,但没有找到用于HashMap的类似宏。 请问,在Rust中如何正确且简洁地创建带有初始数据的HashMap?是否有某种宏或惯用方法?谢谢!