Avatar ·

Peut-on initialiser un HashMap en Rust de manière plus concise et déclarative ?

Bonjour à tous ! Je viens de commencer à apprendre Rust et j'ai rencontré un problème : je dois créer un HashMap avec plusieurs paires clé-valeur prédéfinies. Ce que j'écris actuellement semble très verbeux : ```rust use std::collections::HashMap; let mut scores = HashMap::new(); scores.insert(String::from("Blue"), 10); scores.insert(String::from("Yellow"), 50); scores.insert(String::from("Red"), 25); ``` Cela prend 6 lignes pour trois paires ! En Python, je peux écrire `{"Blue": 10, "Yellow": 50, "Red": 25}` — en une seule ligne. En JavaScript — `{Blue: 10, Yellow: 50, Red: 25}`. Mais en Rust, je dois écrire beaucoup de code boilerplate. J'ai essayé d'utiliser la macro `vec![]` puis `.into_iter().collect()`, mais cela ne semble pas tout à fait correct. Existe-t-il une macro intégrée `hashmap!{}` ou une autre façon de rendre l'initialisation plus concise et déclarative ? Peut-être y a-t-il une crate qui ajoute cela ? Ou est-ce que j'aborde simplement Rust de manière non idiomatique ? Merci de m'éclairer, s'il vous plaît.