Menu
CoddyTech

Membandingkan Map

Termasuk bagian Logika & Alur dalam perjalanan GO di Coddy. Pelajaran 29 dari 68.

Tidak seperti banyak tipe data lain di Go, map memiliki batasan khusus: map tidak dapat dibandingkan secara langsung menggunakan operator ==. Satu-satunya pengecualian untuk aturan ini adalah saat membandingkan map dengan nil.

Artinya, kode seperti ini tidak akan dikompilasi:

map1 := map[string]int{"a": 1, "b": 2}
map2 := map[string]int{"a": 1, "b": 2}

// Ini akan menyebabkan error saat compile!
if map1 == map2 {
    fmt.Println("Maps are equal")
}

Namun, kamu dapat membandingkan map dengan nil dengan aman:

var myMap map[string]int
if myMap == nil {
    fmt.Println("Map is nil")
}

Saat kamu perlu memeriksa apakah dua map berisi pasangan kunci-nilai yang sama, kamu harus menulis fungsi khusus yang melakukan perulangan melalui kedua map dan membandingkan setiap elemen satu per satu. Pendekatan ini memberimu kendali penuh atas logika perbandingan, sehingga kamu dapat menentukan dengan tepat apa arti "sama" untuk kasus penggunaan spesifikmu.

Coba sendiri

Pelajaran ini tidak memiliki tantangan kode.

quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Logika & Alur

Latihan sendiri: Compiler Go online