Rumah > pembangunan bahagian belakang > Golang > Bagaimana Pergi Semak Keahlian Elemen Tanpa Binaan 'jika x dalam'?

Bagaimana Pergi Semak Keahlian Elemen Tanpa Binaan 'jika x dalam'?

Mary-Kate Olsen
Lepaskan: 2024-12-14 16:16:17
asal
172 orang telah melayarinya

How Does Go Check for Element Membership Without an

Pendekatan Go untuk Konstruk "jika x dalam"

Go menawarkan pelbagai pendekatan untuk menyemak sama ada unsur wujud dalam tatasusunan atau menyemak keahlian. Walaupun ia tidak mempunyai binaan "jika x dalam" yang jelas seperti Python, ia menyediakan beberapa alternatif bergantung pada versi dan struktur data yang digunakan.

1. Menggunakan Slices.Contains (Go 1.18 and Later)

For Go 1.18 dan versi yang lebih baru, kaedah slices.Contains menawarkan penyelesaian langsung dan cekap. Ia memerlukan tatasusunan atau hirisan sebagai input dan menyemak sama ada elemen yang ditentukan ada.

arr := []string{"a", "b", "c"}
if slices.Contains(arr, "b") {
    // Element is present
}
Salin selepas log masuk

2. Lelaran Atas Tatasusunan (Sebelum Pergi 1.18)

Sebelum Pergi 1.18, tiada operator terbina dalam untuk menyemak keahlian. Sebaliknya, fungsi tersuai boleh diwujudkan untuk mengulangi tatasusunan:

func stringInSlice(a string, list []string) bool {
    for _, b := range list {
        if b == a {
            return true
        }
    }
    return false
}
Salin selepas log masuk

3. Menggunakan Peta untuk Semakan Keahlian

Jika lelaran pada keseluruhan senarai tidak diingini, menggunakan peta dan bukannya tatasusunan atau kepingan boleh memberikan penyelesaian yang lebih cekap untuk semakan keahlian:

visitedURL := map[string]bool {
    "http://www.google.com": true,
    "https://paypal.com": true,
}
if visitedURL[thisSite] {
    fmt.Println("Already been here.")
}
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana Pergi Semak Keahlian Elemen Tanpa Binaan 'jika x dalam'?. 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