Dictionary pada Bahasa Pemrograman C#
Dalam pemrograman, sering kali kita perlu menyimpan data dalam bentuk pasangan kunci-nilai, misalnya data pengguna, konfigurasi aplikasi, atau cache sementara. Nah, di sinilah Dictionary<TKey, TValue> dalam C# jadi solusi terbaik!
Dictionary<TKey, TValue> adalah struktur data koleksi yang memungkinkan kita menyimpan data berdasarkan kunci unik, mirip seperti kamus (dictionary) di dunia nyata di mana kita mencari arti kata berdasarkan kuncinya.
Yuk, kita bahas apa itu Dictionary dalam C#, cara menggunakannya, dan contoh implementasinya!
1. Apa Itu Dictionary<TKey, TValue> dalam C#?
Dictionary<TKey, TValue>
adalah koleksi key-value pair, di mana setiap kunci (key) bersifat unik dan digunakan untuk menyimpan serta mengambil nilai (value) dengan cepat.
Ciri-Ciri Dictionary<TKey, TValue>
✅ Menyimpan data dalam bentuk pasangan kunci-nilai.
✅ Akses elemen sangat cepat dibandingkan List karena berbasis hashing.
✅ Kunci harus unik (tidak boleh ada duplikasi).
✅ Cocok untuk pencarian cepat berdasarkan kunci.
Bayangkan Dictionary itu seperti buku telepon, di mana kita mencari nama (key) untuk mendapatkan nomor telepon (value) yang terkait.
2. Cara Menggunakan Dictionary<TKey, TValue>
Untuk menggunakan Dictionary<TKey, TValue>
, kita perlu menambahkan namespace System.Collections.Generic
.
Contoh Dictionary Sederhana
using System;
using System.Collections.Generic;
class Program {
static void Main() {
Dictionary<string, int> umur = new Dictionary<string, int>();
umur["Aldo"] = 25;
umur["Budi"] = 30;
umur["Cindy"] = 28;
Console.WriteLine("Umur Aldo: " + umur["Aldo"]);
}
}
Output:
Umur Aldo: 25
Penjelasan:
Dictionary<string, int>
menyimpan nama sebagai kunci dan umur sebagai nilai.umur["Aldo"] = 25
menambahkan pasangan key-value ke Dictionary.- Dengan
umur["Aldo"]
, kita bisa mengambil nilai berdasarkan kuncinya.
3. Operasi Dasar dalam Dictionary<TKey, TValue>
Menambahkan Elemen ke Dictionary (Add
)
dictionary.Add("Dewi", 27);
Menghapus Elemen dari Dictionary (Remove
)
dictionary.Remove("Budi");
Mengecek Apakah Key Tertentu Ada (ContainsKey
)
if (dictionary.ContainsKey("Cindy")) {
Console.WriteLine("Cindy ada di dalam Dictionary.");
}
Mengakses Nilai dengan TryGetValue
if (dictionary.TryGetValue("Aldo", out int value)) {
Console.WriteLine("Umur Aldo: " + value);
}
Mendapatkan Semua Key atau Value
var semuaKunci = dictionary.Keys;
var semuaNilai = dictionary.Values;
Menghapus Semua Elemen dari Dictionary (Clear
)
dictionary.Clear();
4. Looping pada Dictionary<TKey, TValue>
Kita bisa menggunakan foreach untuk mengakses semua elemen dalam Dictionary.
foreach (var item in dictionary) {
Console.WriteLine("Nama: " + item.Key + ", Umur: " + item.Value);
}
5. Kapan Harus Menggunakan Dictionary<TKey, TValue>?
✅ Gunakan Dictionary<TKey, TValue> jika:
- Butuh pencarian cepat berdasarkan kunci unik.
- Ingin menyimpan data dalam format key-value.
- Mengelola data besar dengan akses cepat.
❌ Jangan gunakan Dictionary<TKey, TValue> jika:
- Urutan elemen sangat penting (gunakan
List<T>
). - Kunci yang digunakan berpotensi duplikat.
6. Kesimpulan
- Dictionary<TKey, TValue> adalah koleksi yang menyimpan data dalam pasangan kunci-nilai.
- Menggunakan hashing untuk pencarian cepat dibandingkan List.
- Cocok untuk menyimpan data yang unik dengan akses cepat berdasarkan kunci.
- Mendukung berbagai operasi seperti
Add
,Remove
,ContainsKey
, danTryGetValue
.
Dengan memahami Dictionary dalam C#, kamu bisa mengelola data dengan lebih efisien dan terstruktur!