Rumah > pembangunan bahagian belakang > Golang > Bagaimanakah Saya Boleh Menyemak Kewujudan Utama Merentasi Pelbagai Peta Go dengan Cekap?

Bagaimanakah Saya Boleh Menyemak Kewujudan Utama Merentasi Pelbagai Peta Go dengan Cekap?

Susan Sarandon
Lepaskan: 2024-12-17 08:04:25
asal
716 orang telah melayarinya

How Can I Efficiently Check for Key Existence Across Multiple Go Maps?

Semakan Kewujudan Kunci yang Cekap dalam Berbilang Peta

Dalam Go, adalah perkara biasa untuk bekerja dengan peta, yang merupakan struktur data yang cekap untuk mendapatkan kunci -pasangan nilai. Walau bagaimanapun, kod yang disediakan oleh pembangun menunjukkan keperluan untuk menyemak kewujudan kunci dalam dua peta berasingan. Persoalannya kekal sama ada proses ini boleh dibuat dengan lebih ringkas.

Seperti yang dijelaskan dalam jawapan, menggunakan borang v khas, ok := m[k] dalam Pergi untuk menyemak kewujudan kunci terhad kepada tugasan pembolehubah tunggal . Oleh itu, menggabungkan dua semakan menjadi satu jika syarat menggunakan borang ini tidak boleh dilaksanakan.

Walau bagaimanapun, terdapat pendekatan alternatif untuk mencapai kefungsian yang diingini:

  1. Tugasan Tuple:
    Jika jenis nilai peta ialah jenis antara muka dan anda boleh memastikan bahawa nilai sifar tidak digunakan, anda boleh melaksanakan tugasan tuple menggunakan dua ungkapan indeks:

    if v1, v2 := m1["aaa"], m2["aaa"]; v1 != nil && v2 != nil {
        // ...
    }
    Salin selepas log masuk
  2. Fungsi Pembantu:
    Fungsi pembantu boleh dibuat untuk melaksanakan semakan kewujudan kunci kedua-dua peta dan kembalikan hasilnya:

    func idx(m1, m2 map[string]interface{}, k string) (
        v1, v2 interface{}, ok1, ok2 bool) {
    
        v1, ok1 = m1[k]
        v2, ok2 = m2[k]
        return
    }
    Salin selepas log masuk

    Fungsi ini kemudiannya boleh digunakan sebagai berikut:

    if v1, v2, ok1, ok2 := idx(m1, m2, "aaa"); ok1 && ok2 {
        // ...
    }
    Salin selepas log masuk

Pendekatan ini membolehkan semakan ringkas dan cekap bagi kewujudan kunci dalam berbilang peta dalam satu pernyataan bersyarat.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyemak Kewujudan Utama Merentasi Pelbagai Peta Go dengan Cekap?. 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