Bekerja dengan Hashtables di Unity
Hashtable adalah kumpulan pasangan kunci-nilai yang memungkinkan Anda menyimpan dan mengambil data secara efisien. Setiap kunci dalam Hashtable harus unik, dan digunakan untuk mengakses nilai terkait. Dalam Unity, Hashtable adalah bagian dari namespace System.Collections
dan dapat sangat berguna untuk menyimpan struktur data non-generik.
Membuat Hashtable
Untuk menggunakan Hashtable di Unity, pertama-tama Anda perlu mengimpor namespace System.Collections
lalu menginisialisasi objek Hashtable baru. Berikut contohnya:
using System.Collections;
using UnityEngine;
public class HashtableExample : MonoBehaviour
{
void Start()
{
Hashtable myHashtable = new Hashtable();
// Adding key-value pairs
myHashtable.Add("PlayerName", "Alex");
myHashtable.Add("Score", 1500);
myHashtable.Add("Level", 5);
// Accessing values
Debug.Log("Player Name: " + myHashtable["PlayerName"]);
Debug.Log("Score: " + myHashtable["Score"]);
Debug.Log("Level: " + myHashtable["Level"]);
}
}
Menambahkan dan Mengakses Data
Anda dapat menambahkan data ke Hashtable menggunakan metode Add
. Untuk mengambil nilai, gunakan kunci di dalam tanda kurung siku:
myHashtable.Add("Health", 100);
int health = (int)myHashtable["Health"];
Debug.Log("Health: " + health);
Jika kunci sudah ada, mencoba menggunakan Add
akan memunculkan pengecualian. Sebagai gantinya, gunakan kunci tersebut secara langsung untuk memperbarui nilai:
myHashtable["Health"] = 80; // Updates the value associated with the key
Memeriksa Kunci dan Nilai
Untuk memeriksa apakah ada kunci di Hashtable, gunakan metode ContainsKey
. Demikian pula, gunakan ContainsValue
untuk memeriksa nilai:
if (myHashtable.ContainsKey("Score"))
{
Debug.Log("Score exists: " + myHashtable["Score"]);
}
if (myHashtable.ContainsValue(1500))
{
Debug.Log("Value 1500 is in the Hashtable.");
}
Menghapus Data
Anda dapat menghapus entri dari Hashtable menggunakan metode Remove
:
myHashtable.Remove("Level");
Debug.Log("Level removed.");
Mengulangi Tabel Hash
Untuk mengulang semua pasangan kunci-nilai dalam Hashtable, gunakan loop foreach
:
foreach (DictionaryEntry entry in myHashtable)
{
Debug.Log("Key: " + entry.Key + ", Value: " + entry.Value);
}
Keterbatasan Hashtables
Hashtable bersifat non-generik dan tidak memiliki keamanan tipe. Jika Anda membutuhkan keamanan tipe dan kinerja yang lebih baik, pertimbangkan untuk menggunakan Dictionary
generik dari namespace System.Collections.Generic
. Hashtable terutama berguna saat bekerja dengan koleksi non-generik atau berinteraksi dengan basis kode lama.
Kesimpulan
Hashtables di Unity menyediakan cara mudah untuk mengelola pasangan kunci-nilai dalam proyek Anda. Meskipun bukan jenis koleksi yang paling modern, hashtables tetap menjadi pilihan yang valid untuk banyak skenario. Dengan memahami cara membuat, mengakses, dan memanipulasi Hashtables, Anda dapat mengelola data secara efisien dalam aplikasi Unity Anda.