HashMap — Rust

HashMap di Rust HashMap menyimpan data key-value pairs, mirip object di JavaScript atau dictionary di Python. Import & Membuat HashMap use std::collections::Has

HashMap di Rust

HashMap<K, V> menyimpan data key-value pairs, mirip object di JavaScript atau dictionary di Python.

Import & Membuat HashMap

use std::collections::HashMap;

// Cara 1: new + insert
let mut skor: HashMap<&str, i32> = HashMap::new();
skor.insert("Alice", 95);
skor.insert("Bob", 82);
skor.insert("Charlie", 78);

// Cara 2: from array of tuples
let skor: HashMap<&str, i32> = HashMap::from([
    ("Alice", 95),
    ("Bob", 82),
]);

Akses Nilai

// get() return Option<&V>
if let Some(nilai) = skor.get("Alice") {
    println!("Alice: {}", nilai);
}

// Atau dengan unwrap (hati-hati panic!)
let nilai = skor["Alice"];  // bisa panic jika key tidak ada

Iterasi

for (nama, nilai) in &skor {
    println!("{}: {}", nama, nilai);
}

Entry API

// Insert hanya jika key belum ada
skor.entry("Diana").or_insert(90);

// Update berdasarkan nilai lama
let counter = skor.entry("Alice").or_insert(0);
*counter += 10;  // Alice sekarang 105

Method Berguna

println!("{}", skor.len());           // jumlah entries
println!("{}", skor.contains_key("Bob"));  // true
skor.remove("Bob");                   // hapus entry

Yang akan kamu pelajari