🎯 Tujuan

Memahami dan menggunakan Dictionary di C#, yang berfungsi sebagai struktur data untuk menyimpan data dengan pasangan Key-Value secara efisien. Setelah mengikuti tutorial ini, Anda dapat mengelola data dengan akses cepat berdasarkan kunci unik.

Konteks

Dictionary adalah salah satu tipe koleksi di C# yang memungkinkan penyimpanan data berbasis Key-Value. Ini sangat cocok digunakan untuk data yang memerlukan pengaksesan cepat berdasarkan kunci tertentu, seperti daftar harga produk, kontak telepon, atau konfigurasi aplikasi.

🪵 Hal yang Diperlukan

  1. Pemahaman tentang tipe data dasar di C#.
  2. IDE seperti Visual Studio untuk menjalankan contoh kode.
  3. Pengetahuan tentang List atau Array akan membantu, tetapi tidak wajib.

📋 Langkah-Langkah

  1. Step 1: Membuat Dictionary Sederhana

    csharp
    Copy code
    using System;
    using System.Collections.Generic;
    
    class Program
    {
        static void Main(string[] args)
        {
            // Membuat Dictionary dengan Key tipe string dan Value tipe int
            Dictionary<string, int> ages = new Dictionary<string, int>();
    
            // Menambahkan data ke Dictionary
            ages["Alice"] = 25;
            ages["Bob"] = 30;
            ages["Charlie"] = 35;
    
            // Menampilkan isi Dictionary
            Console.WriteLine("Data usia:");
            foreach (var item in ages)
            {
                Console.WriteLine($"{item.Key}: {item.Value} tahun");
            }
        }
    }
    
    

    Output:

    plaintext
    Copy code
    Data usia:
    Alice: 25 tahun
    Bob: 30 tahun
    Charlie: 35 tahun
    
    

    Penjelasan:

  2. Step 2: Menambah dan Mengakses Item

    csharp
    Copy code
    ages.Add("David", 40); // Menambahkan data baru
    Console.WriteLine($"Usia Bob adalah: {ages["Bob"]} tahun");
    
    

    Output:

    plaintext
    Copy code
    Usia Bob adalah: 30 tahun
    
    

    Catatan: Jika kunci yang sama sudah ada, .Add() akan melemparkan ArgumentException.

  3. Step 3: Mengakses dengan TryGetValue

    csharp
    Copy code
    int age;
    if (ages.TryGetValue("Alice", out age))
    {
        Console.WriteLine($"Usia Alice adalah: {age} tahun");
    }
    else
    {
        Console.WriteLine("Data Alice tidak ditemukan.");
    }
    
    

    Penjelasan:

  4. Step 4: Memperbarui dan Menghapus Item

    csharp
    Copy code
    // Memperbarui nilai
    ages["Alice"] = 26;
    
    // Menghapus item
    ages.Remove("Bob");
    
    

    Setelah Bob dihapus, data untuk kunci Bob tidak lagi tersedia.

  5. Step 5: Memeriksa Keberadaan Key atau Value

    csharp
    Copy code
    if (ages.ContainsKey("Charlie"))
    {
        Console.WriteLine("Data untuk Charlie ditemukan.");
    }
    
    if (ages.ContainsValue(30))
    {
        Console.WriteLine("Ada orang yang berusia 30 tahun.");
    }
    
    
  6. Step 6: Mengiterasi Dictionary

    csharp
    Copy code
    foreach (KeyValuePair<string, int> entry in ages)
    {
        Console.WriteLine($"{entry.Key}: {entry.Value} tahun");
    }
    
    

    Penjelasan:

Final Checkpoint:

Anda berhasil memahami Dictionary jika dapat:

  1. Membuat dan mengisi Dictionary dengan pasangan Key-Value.