Rumah > pembangunan bahagian belakang > Golang > Bagaimanakah Saya Boleh Semak Kewujudan Nilai dengan Cekap dalam Senarai Pergi Menggunakan Peta?

Bagaimanakah Saya Boleh Semak Kewujudan Nilai dengan Cekap dalam Senarai Pergi Menggunakan Peta?

Mary-Kate Olsen
Lepaskan: 2024-11-24 09:38:12
asal
738 orang telah melayarinya

How Can I Efficiently Check for Value Existence in a Go List Using Maps?

Menyemak Kewujudan Nilai dalam Senarai Menggunakan Peta Go

Dalam Go, tidak seperti Python, tiada setara langsung dengan Python dalam kata kunci untuk menyemak sama ada nilai hadir dalam satu senarai. Walau bagaimanapun, terdapat cara yang berkesan untuk mencapai perkara ini menggunakan peta Go.

Satu kaedah ialah memanfaatkan peta dengan kunci rentetan dan nilai boolean, dengan kunci mewakili nilai yang sah dan nilai boolean semuanya ditetapkan kepada benar. Untuk menguji sama ada nilai wujud, anda hanya semak sama ada kunci wujud dalam peta:

valid := map[string]bool{"red": true, "green": true, "yellow": true, "blue": true}

if valid[x] {
    fmt.Println("found")
} else {
    fmt.Println("not found")
}
Salin selepas log masuk

Pilihan lain ialah menggunakan kepingan untuk mewakili nilai yang sah. Setiap item dalam kepingan akan sepadan dengan nilai yang sah. Anda kemudiannya boleh melelang melalui kepingan dan mencipta peta secara dinamik menggunakan gelung untuk julat:

for _, v := range []string{"red", "green", "yellow", "blue"} {
    valid[v] = true
}
Salin selepas log masuk

Jika prestasi membimbangkan, anda boleh mengoptimumkan lagi penciptaan peta dengan menggunakan nilai boolean malar:

const t = true
valid := map[string]bool{"red": t, "green": t, "yellow": t, "blue": t}
Salin selepas log masuk

Pendekatan ini membolehkan anda menyemak dengan cekap sama ada nilai terdapat dalam senarai menggunakan peta Go, tanpa memerlukan utiliti tambahan atau penjanaan kod.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Semak Kewujudan Nilai dengan Cekap dalam Senarai Pergi Menggunakan Peta?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan