Rust के महत्वपूर्ण विषय

Rust HashMap

Store values under keys and look them up fast: insert, get, entry and counting.

  • उन्नत
  • 3 मिनट में पढ़ें
  • 1 चलाने योग्य उदाहरण
आप क्या सीखेंगे
  • insert and get
  • entry().or_insert()
  • Sorting the keys
stock
"apple"5
"pear"5
"plum"1

Values found by key

A HashMap<K, V> stores values under keys, so you can find a value quickly by its key. It is Rust's version of a dictionary or associative array.

insert adds or replaces a value. entry(key).or_insert(0) returns the existing value or inserts a default, which makes counting easy. get returns an Option because the key may be missing. A HashMap has no fixed order, so the keys are sorted before printing.

मुख्य बातें

  1. get returns an Option: the key may be missing.
  2. entry(key).or_insert(0) is the counting pattern.
  3. A HashMap has no fixed order.

चलने योग्य Rust उदाहरण

Rust
कोड चलाएँ →
main.rs
use std::collections::HashMap;

fn main() {
    let mut stock: HashMap<String, u32> = HashMap::new();
    stock.insert(String::from("apple"), 3);
    stock.insert(String::from("pear"), 5);

    *stock.entry(String::from("apple")).or_insert(0) += 2;
    stock.entry(String::from("plum")).or_insert(1);

    println!("apples: {}", stock["apple"]);
    println!("has kiwi: {}", stock.contains_key("kiwi"));

    if let Some(count) = stock.get("pear") {
        println!("pears: {count}");
    }

    let mut names: Vec<&String> = stock.keys().collect();
    names.sort();
    println!("{:?}", names);
}
इस उदाहरण के लिए Run बटन बनाएँ कोड चलाने का परिणाम
apples: 5
has kiwi: false
pears: 5
["apple", "pear", "plum"]

अभ्यास

उदाहरण को ऑनलाइन कंपाइलर में खोलें, कोई मान बदलें या एक पंक्ति जोड़ें, और चलाने से पहले आउटपुट का अनुमान लगाएँ। फिर कोड में जान-बूझकर गलती करें और कंपाइलर का संदेश पढ़ें।

यह पाठ पूरा कर लिया?

अपनी प्रगति ट्रैक करने के लिए इसे सीखा हुआ मार्क करें।

अगला: Word Frequency Counter →

चैलेंज से अभ्यास करें

इस पाठ में सीखी बात से एक असली समस्या हल करें। हर चैलेंज ब्राउज़र में चलता है, तुरंत टेस्ट और AI रिव्यू के साथ।

सभी चैलेंज